首先检查是否已经安装,如果已经安装先删除以前版本,以免安装不成功
rpm -qa | grep mysql
如果安装了的话,就使用下面这条命令删除原先的mysql,举例如下:
rpm -e --nodeps mysql-libs-5.1.73-5.e16_6.i686
下载MySql安装包
rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
或
rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
安装MySql
yum install -y mysql-server
或者
yum install mysql-community-server
如果显示以下内容说明安装成功
Complete!
设置开机启动mysql
systemctl enable mysqld.service
检查是否已经安装了开机自动启动
systemctl list-unit-files | grep mysqld
mysqld.service enabled
说明设置成功
设置开启服务
systemctl start mysqld.service
查看mysql默认密码
grep 'temporary password' /var/log/mysqld.log
登陆MySql,输入用户名和密码
mysql -uroot -p //密码也就是第九步里面查看到的默认密码
修改当前用户密码 会报错
SET PASSWORD = PASSWORD('root');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
原因是因为密码设置的过于简单会报错,MySQL有密码设置的规范,具体是与validate_password_policy的值有关,下图表明该值规则
两条都需要执行
密码的长度是由validate_password_length决定的,但是可以通过以下命令修改
set global validate_password_length=4;
validate_password_policy决定密码的验证策略,默认等级为MEDIUM(中等),可通过以下命令修改为LOW(低)
set global validate_password_policy=0;
修改完成后密码就可以设置的很简单,比如1234之类的。
SET PASSWORD = PASSWORD('root');
Query OK, 0 rows affected (0.00 sec)
设置成功
查询用户表命令:select User,authentication_string,Host from user;
如果没有最后一个 root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | %
需要添加
开启远程登录,授权root远程登录(解释:不要以为云服务器可以远程登录root用户,就以为我们也可以以mysql的root用户身份远程登录mysql数据库)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'alliance' WITH GRANT OPTION; //这里的root要换成你自己mysql数据库的密码
立即生效
flush privileges; 这一步一定要做,不然无法成功! 这句表示从mysql数据库的grant表中重新加载权限数, 因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。
再次查询
select User,authentication_string,Host from user;
有了就可以使用navicat测试连接