前言
Hive搭建好了,发现自带derby无法满足生产需求,所以需要重新指定一个关系型数据库,作为存放元数据的库!
安装前准备
- 上传rpm安装包到指定目录下笔者是放到了/opt/software目录中。
- 检查linux是否已经安装了MySQL
rpm -qa | grep mysql
rpm -qa | grep MySQL
有查询出则删除,我查询到的mysql如下:
mysql-libs-5.1.73-7.el6.x86_6
- 删除以前停止MySQL的一切服务
sudo service mysql stop
- 删除mysql(不管是否依赖)
sudo rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_6
安装(5.6版本)
- 安装server端
sudo rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rpm
- 安装client端
sudo rpm -ivh MySQL-client-5.6.24-1.el6.x86_64.rpm
注意事项
如果是为了hive搭建mysql的话,如果是5.5版本则需要在安装以后修改配置文件,
在 /usr/share/mysql/ 中找到my.cnf的配置文件,拷贝其中的my-huge.cnf 到 /etc/ 并命名为my.cnf。
在my.cnf中的 [mysqld] 下添加这句话:
binlog_format=ROW
原因请参考博文点这里here!!。
修改root用户密码
如果是5.6的mysql,需要先为root@localhost设置密码:
查看随机生成的密码:
sudo cat /root/.mysql_secret
启动服务:
sudo service mysql start
登录后修改密码:
mysql -uroot -p刚查询的随机密码
修改密码(不要忘记引号):
SET PASSWORD=password('密码')
之后退出,使用新密码登录!
提供一个可以从任意机器访问mysql服务实例的用户
查询当前有哪些用户:
select host,user,password from mysql.user;
删除除了localhost的所有用户
delete from mysql.user where host <> 'localhost';
修改root用户可以从任意机器登录:
update mysql.user set host='%' where user='root';
刷新权限
flush privileges;
重启服务:
sudo service mysql restart
验证本机登录:
sudo mysql -uroot -psa
验证从外部地址登录:
sudo mysql -h hadoop103 -uroot -psa
查看当前连接的线程:
sudo mysqladmin processlist -uroot -psa
Mysql的卸载
查询当前安装的mysql版本
rpm -qa | grep MySQL
停止当前的mysql服务
sudo service mysql stop
卸载服务端
sudo rpm -e MySQL-server-5.6.24-1.el6.x86_64
删除之前mysql存放数据的目录
sudo rm -rf /var/lib/mysql/