前提:客戶端伺服器端必須在同一臺機器上面才能修改
如果mysql庫裡面沒有其他使用者資料,可以直接初始化mysql庫。
但是如果mysql庫建立了很多使用者就不能進行初始化了。只能從新找回密碼
要想找回管理員密碼必須停止mysql服務
service mysqld stop
找到 有個 $bindir/mysqld_safe --datadir="$datadir" --pid-file="mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
修改為:
$bindir/mysqld_safe --skip--grant-tables --skip-networking --datadir="$datadir" --pid-file="mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
再啟動mysql服務。
然後登陸上去後再設定密碼注意這裡再修改密碼時候只能去改mysql.user表裡面的password 欄位了
update user set password=password('設定的新密碼'); where user='root';
再重新啟動mysql服務即可
方法2:
使用mysqld_safe 命令加上一些引數,登陸時候不使用授權表
首先停止mysql服務
然後:mysqld_safe --skip-grant-tables --user=mysql &
直接新開乙個shell輸入mysql即可進入
如果無法進入,提示
mysqld_safe starting mysqld daemon with databases from /mydata/data
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
請檢視/var/log/mysqld.log
我檢視到日誌顯示這樣:
160412 6:21:04 [error] /usr/local/mysql/bin/mysqld: can't create/write to file '/var/run/mysqld/mysqld.pid' (errcode: 2)
160412 6:21:04 [error] can't start server: can't create pid file: no such file or directory
160412 06:21:04 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
應該是/var/run/mysqld目錄不存在,系統無法在此目錄找到pid檔案
解決:新建目錄,在目錄下面建立pid檔案
mkdir /var/run/mysqld
在目錄下面新建mysqld.pid檔案,並授權該目錄下面的所有檔案為mysql使用者,mysql組
[root@centos log]# cd /var/run/mysqld
[root@centos mysqld]# touch mysqld.pid
[root@centos run]# chown -r mysql.mysql mysqld
接著去修改mysqlku裡面user表
update mysql.user set password = password('your pwd');
最後重新整理許可權
flush privileges;
最後再啟動mysql服務
之前你使用免密碼登陸之後,mysql服務已經被啟動了,是以無授權表方式啟動的,當你update改完密碼之後,需要重啟mysql服務,你會這樣
/etc/init.d/mysqld stop
此時他會提示你pid檔案不存在。因為你之前啟動不是使用/etc/init.d/mysqld start 啟動的因此就不會生成pid檔案
所以不能通過這樣重啟。
正確重啟方式:
mysqladmin -u root -p shutdown
/etc/init.d/mysqld start
mysql root忘記密碼
etc init.d mysql stop usr local mysql bin mysqld safe user mysql skip grant tables skip networking mysql u root mysql mysql update user set password p...
忘記mysql root密碼
登入 phpmyadmin 時,發現找不到root密碼了。找到乙個資料,解決了問題 2 執行 service mysqld restart 3 執行 mysql 到mysql 命令列 4 mysql use mysql mysql update user set password password ...
mysql root 密碼忘記
首次安裝mysql後,使用root登入mysql。終端會提示需要輸入密碼。可是安裝的過程並沒有提示輸入root的密碼。怎麼辦呢?通過修改my。conf配置繞開mysql的授權驗證,重置root使用者的密碼。操作過程如下 1 先停止當前正在執行的mysql服務 service mysql stop 2...