ubunto mysql8大小写不敏感以及重置密码

Mysql配置位置:/etc/mysql/mysql.conf.d/mysqld.cnf

Mysql data 位置:/etc/lib/mysql

第一步:mysqld.cnf文件为readonly文件,修改无法保存,解决方案如下

在mysqld.cnf所在文件目录下,通过修改

 sudo chmod 777 mysqld.cnf

第二步:完成之后,修改完成后需要通过

 sudo chmod 644 mysqld.cnf

将权限修改回来,否则配置文件并不会生效

第三步:备份mysql数据库

mysqldump  -h localhost -u root -p mysql > ~/mysqldump.sql

第四步:

sudo vi  /etc/mysql/mysql.conf.d/mysqld.cnf

加上下面两句

lower_case_table_names=1

port=3306

第五步:重置数据库

sudo service mysql stop

sudo rm -rf /var/lib/mysql

sudo mkdir /var/lib/mysql

sudo chown -R mysql:mysql /var/lib/mysql

sudo chmod 750 /var/lib/mysql


下面这句打完后可能重启不了数据库,重新走一遍上面的命令,后不执行这步,最后重启服务器

sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize lower_case_table_names=1 --user=mysql --console

sudo service mysql restart

第六步:这时候初始化后的数据库密码是不知道的,所以要重置密码

sudo vi  /etc/mysql/mysql.conf.d/mysqld.cnf

随意位置加上 skip-grant-tables

重启MySQL服务

sudo service mysql restart

终端输入mysql进入MySQL,输入USE mysql切换至mysql数据库

mysql

USE mysql

下面这句的密码找个mysql8的数据库找个密码贴上去

Update user set authentication_string='*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B',plugin = 'mysql_native_password' where user='root';

flush privileges;

exit;

修改mysqld.cnf

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

去掉skip-grant-tables

退出重启mysql

sudo service mysql restart

Mysql正常进入,然后下面这句无所谓了

alter user 'root'@'localhost' identified by 'new_password';

下面这里可以重新导入mysql的数据,mysql库的表

 use mysql

 source /home/ubuntu/mysqldump.sql

flush privileges;

exit;

你可能感兴趣的:(ubunto mysql8大小写不敏感以及重置密码)