说明:
1.已经安装完成MySQL、数据库已初始化。
2.开发用表已经导入、用户权限已经增加。
解决方案:
删除数据文件、增加忽略配置、重新导入数据。
1.停止服务:
systemctl stop mysqld
2.查看服务状态:
systemctl status mysqld
3.删除数据文件:
rm -rfv /var/lib/mysql/*
4.修改my.cnf文件(/etc/my.cnf)最下面增加:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
lower_case_table_names=1
5.重新启动数据库:
systemctl start mysqld
6.查看服务状态:
systemctl status mysqld
7.获取默认密码:
grep "password" /var/log/mysqld.log
此时应该会有两个密码,第一个是初始化时的密码,第二个是刚刚启动生成的,使用第二个。
8.打开数据库:
mysql -u root -p
9.修改密码:
alter user 'root'@'localhost' identified by '你的密码';
10.创建新用户:
create user 'root'@'%' identified by '这里是你的密码';
11.设置允许所有的IP连接数据库:
grant all privileges on *.* to 'root'@'%' with grant option;
12.刷新权限:
flush privileges