程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql下創建root用戶

Mysql下創建root用戶

編輯:MySQL綜合教程

Mysql下創建root用戶


在linux下安裝了mysql之後出現錯誤,剛開始以為就是沒有密碼的問題,按照這篇文章進行了修改:linux下mysql 初次登陸修改密碼 修改之後應該沒錯,但再次啟動服務root登錄還是不行,下面的就是出現的問題和解決過程:


mysqld_safe --skip-grant-tables&mysql -uroot mysql
mysql> select * from user;
Empty set (0.00 sec)
mysql> select USER();
+--------+
| USER() |
+--------+
| root@ |
+--------+
1 row in set (0.00 sec)

這裡驚奇的發現居然沒有root用戶,user表裡面是空的,還是第一次遇到這種問題的。

由於 mysqld_safe --skip-grant-tables裡面是不能用grant的,於是想到了手動insert插入root用戶:

**為了大家方便這裡提供一些說明:第一個值是host,第二個為user這兩項是必填項,password("my_password")這裡進行密碼的設置,MY_PASSWORD 就是密碼 ,而'Y'有28個,之後有1個enum和3個blob 可以為空,也就是這裡的4個空字符,int類型有4個,默認值為0

INSERT INTO user VALUES('%','root',password('MY_PASSWORD'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0)

這裡要主要的是第3個字段密碼處要用password('密碼'),因為mysql中密碼是要經過編碼的,不是直接字符串保存的。

接著在殺掉所有mysql進程,之後正常重啟mysql,即可用root用戶登錄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved