正常来说 mysql在linux安装还是很简单,但是坑比较多,为了减轻 填坑的悲剧,需要一份认真的mysql 安装流水账,主要我们的mysql 是以服务大数据为主 hive impala hue 都要使用到mysql ,不装 活不下去
1.首先查看 本地是否已经安装了 mysql 和 卸载mariadb
rpm -qa | grep mariadb
结果有三个,需要全部卸载掉
mariadb-libs-5.5.50-1.el7_2.x86_64
mariadb-5.5.50-1.el7_2.x86_64
mariadb-server-5.5.50-1.el7_2.x86_64
强制卸载,因为没有--nodeps
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
参考 http://blog.csdn.net/xizaihui/article/details/53041603
然后需要安装一些依赖 perl net-tool perl-Module-Install.noarch
sudo yum install perl
sudo yum install net-tools
sudo yum install -y perl-Module-Install.noarch
因为 centos 本身没有mysql 源
所以 直接 yum install mysql-server 会报 错
No package mysql-server available.
所以需要配置 mysql源
sudo rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
然后 安装 mysql ,会自动安装 server和Client libs 等
sudo yum install mysql-server
然后是赋予权限 ,mysql 用户可能会自动创建在安装mysql的时候
chown -R mysql /var/lib/mysql
chgrp -R mysql /var/lib/mysql
然后 开启 mysql 的守护程序
service mysqld start
然后 进入 mysql 默认为root 用户
mysql -uroot -p ,首次登陆没有密码,直接回车即可
但是 发现输入任何命令
Ignoring query to other database ,退出后重新登录 即可
为 mysql 的root用户 修改密码
首先 找到 mysql的 执行目录
$ which mysql
/usr/bin/myql
说明 mysqladmin 也在 /usr/bin
然后 修改密码
退出mysql 交互模式
执行命令:# ./bin/mysqladmin -u root password '密码'
例如:# ./bin/mysqladmin -u root password haining
为 mysql 创建新的用户 比如 dev
进入 mysql交互模式
创建数据库 然后创建用户 给特定的数据库 赋予权限
create database hive default character set latin1;
grant select,insert,update,delete,create,drop on hive.* to dev@localhost identified by 'DmE_34dev';
FLUSH PRIVILEGES; #一定要刷新权限
如果使用下面的这种方式,则报错
insert into mysql.user(Host,User,Password) values("localhost","dev",password("DmE_34dev"));
Field 'ssl_cipher' doesn't have a default value的错误