Mysql-linux下密码修改,忘记密码修改,超级管理用户修改
生活随笔
收集整理的這篇文章主要介紹了
Mysql-linux下密码修改,忘记密码修改,超级管理用户修改
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
?未忘記密碼
方法一:
在mysql系統外,使用mysqladmin
Enter password: 【輸入原來的密碼】
?方法二:
通過登錄mysql系統
?
?
?
?
?
??在Linux平臺下忘記了MySql超級用戶管理密碼,如何修改密碼 重新獲得控制權??
?
方法一
? ? 1. 先停止MYSQL服務
# service mysql stop? 2. 用mysql 安全模式運行并跳過權限難
# mysqld_safe --skip-grant-tables? 或者
# mysqld_safe --skip-grant-tables & &,表示在后臺運行,不再后臺運行的話,就再打開一個終端咯。?
? ?3. 用root 登錄 ,此時不需要密碼
# mysql -u root? 4. 現在開始修改密碼了
mysql> use mysql;mysql> update user set Password = PASSWORD('your newpassword') where User = 'root' ;mysql> exit??注意:當運行' mysqld_safe --skip-grant-tables' 后停在'Starting mysqld daemon with databases from /var/lib/mysql' ,可以新開一個遠程終端,繼續操作
?
?方法二
可以進行如下的步驟重新設置MySQL的root密碼:1.首先確認服務器出于安全的狀態,也就是沒有人能夠任意地連接MySQL數據庫。 因為在重新設置MySQL的root密碼的期間,MySQL數據庫完全出于沒有密碼保護的 狀態下,其他的用戶也可以任意地登錄和修改MySQL的信息。可以采用將MySQL對 外的端口封閉,并且停止Apache以及所有的用戶進程的方法實現服務器的準安全 狀態。最安全的狀態是到服務器的Console上面操作,并且拔掉網線。
2.修改MySQL的登錄設置: # vi /etc/my.cnf
?
在[mysqld]的段中加上一句:skip-grant-tables例如: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-name-resolve skip-grant-tables
?
保存并且退出vi。3.重新啟動mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ]
?
4.登錄并修改MySQL的root密碼 # /usr/bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 3.23.56 Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer. mysql> USE mysql ; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ; Query OK, 0 rows affected (0.00 sec) Rows matched: 2 Changed: 0 Warnings: 0 mysql> flush privileges ; Query OK, 0 rows affected (0.01 sec) mysql> quit Bye
?
5.將MySQL的登錄設置修改回來 # vi /etc/my.cnf
?
將剛才在[mysqld]的段中加上的skip-grant-tables刪除
保存并且退出vi。
6.重新啟動mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ]
?
?
?
方法三:如果你忘記了你的MYSQL的root口令的話,你可以通過下面的過程恢復。
1. 向mysqld server 發送kill命令關掉mysqld server(不是 kill -9),存放進程ID的文件通常在MYSQL的數據庫所在的目錄中。 kill `cat /mysql-data-directory/hostname.pid` 你必須是UNIX的root用戶或者是你所運行的SERVER上的同等用戶,才能執行這個操作。
2. 使用 `--skip-grant-tables'
?
參數來啟動 mysqld。3. 使用 `mysql -h hostname mysql'
?
命令登錄到mysqld server ,用grant命令改變口令。你也可以這樣做: `mysqladmin -h hostname -u user password 'new password''。?
(其實也可以用use mysql; update user set password =password('yourpass') where user='root' 來做到。)4. 載入權限表: `mysqladmin -h hostname flush-privileges' ,
?
或者使用 SQL 命令 `FLUSH PRIVILEGES'。?
(當然,在這里,你也可以重啟mysqld。)?
?
方法四:(一定要先備份)
1,重新在另一臺電腦上安裝相同版本的MySQL
2,刪除忘記密碼的電腦中MySQL安裝目錄中\data\mysql的全部內容(要先停止MySQL服務)
3,Copy新裝的電腦上MySQL安裝目錄中\data\mysql的全部內容 to 剛剛刪除的目錄中
4,啟動MySQL服務
這樣就只有一個root用戶了,密碼為空……
?
轉載于:https://www.cnblogs.com/hwaggLee/p/4591994.html
總結
以上是生活随笔為你收集整理的Mysql-linux下密码修改,忘记密码修改,超级管理用户修改的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 读《人,绩效和职业道德》有感
- 下一篇: 第二次冲刺团队进展报告七