CentOS7安装MySQL、修改密码、设置开机自启(自己踩坑后尝试出来的安装方式,在两台机器上都试过,没有问题)
本篇文章有三大内容:安装、设置root密码、设置开机自启,概述如下:
- 通过下载清华镜像,yum方式安装;
- 先设置跳过密码验证再修改root密码;
- Centos7设置开机自启的方式
可能不完全正规,但至少能解决问题。本人尝试的两台机器都是CentOS Linux release 7.7.1908 (Core),安装的mysql分别是5.7.12和5.6.24。
1. 删除mariadb和原有mysql
–》rpm -qa | grep mariadb
–》rpm -qa | grep mysql
如果有查看结果,则用下面的语句删除它
–》rpm -e --nodeps 查到的结果
关于彻底删除msyql,请参考大佬的博文 Centos7 完全卸载mysql
2. 下载autoconf
autoconf是必要组件,如果没有,安装时会报错
–》yum -y install autoconf
3. 清华镜像上下载mysql的common、libs、client、server
4. yum localinstall xxx.rpm
顺序是common、libs、client、server
如,yum localinstall mysql-community-common-5.7.12-1.el7.x86_64.rpm
5. 查看mysql是否安装成功
当然,也可以用service mysqld status
6. 启动
service mysqld start
7. 设置root 密码
7.1 查看mysql安装后生成的随机密码
–》grep ‘temporary password’ /var/log/mysqld.log。这一步其实可以不用执行的,直接从7.2 开始
很尴尬,还是登不进去
7.2 设置跳过密码验证
–》vi /etc/my.cnf,添加skip-grant-tables
–》service mysqld restart
现在直接mysql -uroot -p,不用输入密码,就能进入客户端命令窗口
7.3 正式修改密码
–》alter user ‘root’@‘localhost’ identified by ‘123456’;
如果有下面的报错
可以flush privileges,再执行改密即可
用5.7.12,上面那么改密码是没问题的。如果用5.6.24,会有
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by '123456'' at line 1
的错误。解决方案是用下面的命令代替。如果还有报错,尝试退出mysql命令行窗口再重进,以及flush privileges之后,再执行下面命令。因为本人在测试的时候,有过退出重进以及flush privileges两个操作。
重新vi /etc/my.cnf,把skip-grant-tables注释掉
8. 设置开启自启动
- centos7系统,是systemctl来管理服务。可以通过systemctl enable mysql来设置 mysql开机启动自动
- 通过输入ntsysv验证是否开机自启,括号里有*,说明设置成功