1.编辑my.cnf文件加入skip-grant-tables,忽略密码登录
[root@node1 ~]# vi /etc/my.cnf
[mysqld]
skip-grant-tables
[root@node1 ~]# sudo service mysql restart
2.修改密码
[root@node1 ~]# mysql mysql> update mysql.user set authentication_string=PASSWORD('root1234') where user='root' and host='localhost'; mysql> flush privileges; mysql> exit;
3.开启密码登录
[root@node1 ~]# vi /etc/my.cnf
[mysqld]
#skip-grant-tables
[root@node1 ~]# sudo service mysql restart
4.修复错误
[root@node1 ~]# mysql -uroot -proot1234;
[root@node1 ~]# mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root1234'
Query OK, 0 rows affected (0.09 sec)
完成
使用MariaDB代替Mysql数据库(2017-10-13):
- # yum install mariadb-server -y //如果已安装可以省略
- # systemctl start mariadb.service //启动服务
- # systemctl enable mariadb.service //开机启动服务
- # mysql -u root -p //登录mysql