在阿里云上搞了一台ECS,尝试装一下mysql,yum自动安装后一开,居然还是5.1版本的,网上请教后才知道,要装5.6,5.7版本还得自己定制一下,记录过程如下。
准备环境
包括删除老的mysql和下载好文件。
查看已安装的版本
rpm -qa|grep -i mysql
卸载掉
yum remove mysql*
再跑一次查询命令,可以看到没有文件了。
下载安装配置文件
根据这篇文章的说法, 到http://dev.mysql.com/downloads/repo/yum/找要下载文件的链接
wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
安装和配置
先安装刚下载的文件
yum localinstall mysql57-community-release-el6-11.noarch.rpm
查看一下信息
yum repolist all | grep mysql
可以看到,默认enable的就是5.7版本,所以就直接安装了
yum install mysql-community-server
启动起来
service mysqld start
进去看一下
mysql -u root
结果不行,报错了
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
于是又网上找了一圈,解决方法是把登录验证关闭后,设置root密码就可以了。
修改/etc/my.cnf, 在[mysqld]下面加入skip-grant-tables=1
service mysqld restart
mysql -u root 这次可以了
修改root密码
use mysql;
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
exit;
然后把my.cnf加的语句去掉,重启mysql服务
mysql -u root -p
现在就可以用密码登录了。
开放远程连接
上面的动作完成后,还只能本机登录, 于是执行如下命令
use mysql;
Grant all on *.* to 'root'@'%' identified by 'root用户的密码' with grant option;
这里会报密码不符合规则,因为我设置的密码比较简单,所以还要改一下密码规则设置
set global validate_password_policy=0;
然后再执行上面的语句
flush privileges;
完成后就可以远程连接了。