天天看点

HIVE再次尝试 用 Mysql 环境搭建 以及 mysql中文乱码完美解决

第一步:安装mysql

因为我用的是ubuntu系统,安装比较简单,一行命令搞定

这里顺便说下mysql的数据文件放在/var/lib/mysql目录下,配置文件放在:/etc/mysql目录下

对于mysql5.5版本:可用sudo service mysql stop/start/restart 进行mysql开启与关闭

对于mysql5.5之前的版本,可用sudo /etc/init.d/mysql start|stop|restart|reload|force-reload|status 进行相关操作,最常用的就是stop、restart、start命令

第二步:配置hive

把hive/conf文件夹中创建一个hive-site.xml的文件,内容为:

很明显,最后两项是配置mysql的连接用户名与密码,可根据实际情况更改。

这里还需要把mysql的连接jar把放到classpath下,注意:linux上classpath 必须为大写,我这里直接把mysql-connector-java-5.1.26-bin.jar放到hive的lib文件夹下,然后再在 .profile文件中添加这么一句:

ok,这两步走完就完成配置任务了。

我在安装mysql遇到这么一个问题,我把日志贴出来:

大约就是这么一个错误,这个问题让我很纠结了,后来在stackoverflow上找到一个方法:

执行这三行命令后完美解决问题,但是原因我还没找到,先留一下。

修改mysql的root口令 :  <code>sudo mysqladmin -u root -p password '你的新密码'</code>

<code></code>

参考文章:

mysql安装:

<a target="_blank" href="http://wiki.ubuntu.org.cn/mysql%e5%ae%89%e8%a3%85%e6%8c%87%e5%8d%97">http://wiki.ubuntu.org.cn/mysql%e5%ae%89%e8%a3%85%e6%8c%87%e5%8d%97</a>

<a target="_blank" href="http://www.cnblogs.com/wuhou/archive/2008/09/28/1301071.html">http://www.cnblogs.com/wuhou/archive/2008/09/28/1301071.html</a>

<a target="_blank" href="http://stackoverflow.com/questions/9972611/not-able-to-install-mysql-on-ubuntu-11">http://stackoverflow.com/questions/9972611/not-able-to-install-mysql-on-ubuntu-11</a>

mysql启动/停止:

<a target="_blank" href="http://blog.csdn.net/phpandjava/article/details/4636610">http://blog.csdn.net/phpandjava/article/details/4636610</a>

mysql中文乱码:

这里简单明了地说下:

对于mysql5.5版本,需要在/etc/mysql/my.cnf做如下修改:

[client]下添加:default-character-set = utf8

[mysqld]下添加:character-set-server

= utf8

对于mysql5.5之前的版本,做如下修改:

在[client] 和 [mysqld]下都添加一行

default-character-set

如果在mysql5.5 版本中也这么配置会导致mysql服务起不来。

最后上图,有图有真相呀。

HIVE再次尝试 用 Mysql 环境搭建 以及 mysql中文乱码完美解决

图1. 上图是没有修改前的mysql编码情况

HIVE再次尝试 用 Mysql 环境搭建 以及 mysql中文乱码完美解决

图2.上图没有修改后的mysql编码情况

对于已经存在的数据库,可以通过执行下面的命令更改字符集:

参考:

http://stackoverflow.com/questions/22572558/how-to-set-character-set-database-and-collation-database-to-utf8-in-my-ini