1. 程式人生 > >關於MySql5.7版本修改密碼時,提示ERROR 1049 (42000): Unknown database 'mysql'的問題

關於MySql5.7版本修改密碼時,提示ERROR 1049 (42000): Unknown database 'mysql'的問題

前面一切順利, 這是我自己新建的配置檔案:
這裡寫圖片描述
從檔案中可以看到,我在mysql解壓目錄下,新建了一個data資料夾,並將其作為mysql資料檔案存放路徑.

接下來到了修改資料庫登入密碼的時候,按理來說就是這麼操作:

mysql> use mysql;
mysql> update user set authentication_string=password("新密碼") whereuser="root";

但是此時控制檯顯示

ERROR 1049 (42000): Unknown database ‘mysql’

也就是沒有mysql這個資料庫, 但是我確實是使用如下命令進行了初始化資料庫的,mysql作為系統資料庫應該會自動生成,但是此時找不到

mysqld  --initialize

我找了很久的原因,後面覺得應該是c盤的寫入許可權不足導致初始化生成資料庫失敗了, 於是我先關閉mysqld.exe的程序, 然後將data資料夾移至d盤. 然後再修改my.ini中basedir的路徑:

# mysql資料檔案存放路徑
datadir=D:\mysql data\data

最後重新mysqld --initialize初始化, 然後發現data資料夾多了mysql的資料夾,也就意味著資料庫正常生成了,後面再修改密碼,到此問題解決!

tips

在下午使用navicat連結資料庫的時候,又提示我說密碼過期:
這裡寫圖片描述

最後找到解決辦法就是:
使用cmd命令,去mysql的bin目錄下,重新登入, 登入後使用以下命令

mysql >  set password = password('你要新設定的密碼');