當前位置:首頁 » 密碼管理 » Mysql忘記密碼怎麼修改

Mysql忘記密碼怎麼修改

發布時間: 2022-08-08 02:21:22

『壹』 mysql密碼忘記了怎麼辦

1,關閉你現在正在運行的mysql資料庫,用結束mysql進程或者直接關閉mysql伺服器都可以

2,關閉資料庫後,運行點擊開始運行,輸入cmd進入命令行窗口,在這個命令行中操作進入到你資料庫所在的安裝路徑,一般默認安裝的話都會在c:\Program Files\MySQL\MySQL Server 5.0\bin

3,在這個路徑下輸入 mysqld --skip-grant-tables 然後回車,這段命令的意思就是從安全模式下啟動資料庫

4,只要上述步驟成功的話,這個cmd窗口會一直有個小游標出現,然後沒有任何提示彈出來,這代表你的資料庫已經啟動了,這時候重新在打開一個cmd窗口,同樣進入到mysql資料庫的安裝路徑下,然後輸入mysql -uroot -p,這個命令的意思是使用空密碼的方式登錄MySQL,成功的話就會看到一個mysql>這樣的提示,最後在這個提示下輸入update mysql.user set password=PASSWORD('新密碼') where User='root';
,在新密碼中輸入你要修改的密碼,然後關掉所有的cmd窗口,按照第一步的操作關掉你的伺服器,然後按正常步驟再次運行你的伺服器,這時候你root的密碼就改成你剛才設置的新密碼了。

『貳』 mysql忘記密碼怎麼修改密碼

方法1: 用SET PASSWORD命令 

首先登錄MySQL。 格式:mysql> set password for 用戶名@localhost = password(『新密碼』); 例子:mysql> set password for root@localhost = password(『123』);

方法2:用mysqladmin 

格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼 例子:mysqladmin -uroot -p123456 password 123

方法3:用UPDATE直接編輯user表 

首先登錄MySQL。 mysql> use mysql; mysql> update user set password=password(『123』) where user=』root』 and host=』localhost』; mysql> flush privileges;

方法4:在忘記root密碼的時候,可以這樣 以windows為例: 

1. 關閉正在運行的MySQL服務。 2. 打開DOS窗口,轉到mysqlin目錄。 3. 輸入mysqld –skip-grant-tables 回車。–skip-grant-tables 的意思是啟動MySQL服務的時候跳過許可權表認證。 4. 再開一個DOS窗口(因為剛才那個DOS窗口已經不能動了),轉到mysqlin目錄。 5. 輸入mysql回車,如果成功,將出現MySQL提示符 >。 6. 連接許可權資料庫: use mysql; 。 6. 改密碼:update user set password=password(「123」) where user=」root」;(別忘了最後加分號) 。 7. 刷新許可權(必須步驟):flush privileges;。 8. 退出 quit。 9. 注銷系統,再進入,使用用戶名root和剛才設置的新密碼123登錄。

『叄』 MySQL密碼忘了怎麼辦

MySQL密碼忘了的操作:

1.關閉MySQL資料庫,因為root密碼忘記了,mysqladmin無法使用,此時,只能通過killpid關閉程序。在這里,科普一下kill和kill-9的區別默認參數下,kill發送SIGTERM信號給進程。

告訴進程,你需要被關閉,請自行停止運行並退出。kill-9發送SIGKILL信號給進程,告訴進程,你被終結了,請立刻退出。與SIGTERM相比,這個信號不能被捕獲或忽略,同時接收這個信號的進程在收到這個信號時不能執行任何清理所以。

萬不得已,不要通過kill-9殺掉進程,這可能導致MySQL資料庫的物理結構損壞,無法重新啟動。

2.在my.cnf文件部分添加skip-grant-tables參數。

3.登錄資料庫,修改root賬戶的密碼以下是修改root密碼的三種方式:

1>mysql>setpasswordfor'root'@'localhost'=password('123')。無需刷新許可權表。

2>mysql>updatemysql.usersetpassword=password("456")whereuser="root"andhost="localhost"。

mysql>flushprivileges;3>#mysqladmin-urootpassword"123"。

4.關閉資料庫,注釋掉skip-grant-tables參數,重新啟動資料庫。上面這種方式雖然不錯,但是有個問題,你必須重啟資料庫,對於線上環境,這可能是不被允許的。

『肆』 mysql資料庫密碼忘了怎麼重置

1、編輯MySQL配置文件:
windows環境中:%MySQL_installdir%\my.ini//MySQL安裝目錄下的my.ini配置文件。
linux環境中:/etc/my.cnf
在[MySQLd]配置段添加如下一行:skip-grant-tables
保存退出編輯。
2、然後重啟MySQL服務
windows環境中:
net stop MySQL
net start MySQL
linux環境中:
/etc/init.d/MySQLd restart
3、設置新的ROOT密碼
然後再在cmd命令行下執行:
MySQL -uroot -p MySQL
要求輸入密碼時直接回車無需密碼即可進入資料庫了。
現在我們執行如下語句把root密碼更新為 123456:
update user set password=PASSWORD("123456") where user='root'
quit 退出MySQL。
4、還原配置文件並重啟服務
然後修改MySQL配置文件把剛才添加的那一行(skip-grant-tables)刪除。
再次重起MySQL服務,即可
二.修改MySQL的用戶名和密碼:(未證實)
方法一:(適用於管理員或者有全局許可權的用戶重設其它用戶的密碼)
進入命令行模式
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='name'
mysql> FLUSH PRIVILEGES
mysql> QUIT
方法二:(應用同上,只是方法不同)
mysql -u root mysql
mysql> SET PASSWORD FOR name=PASSWORD('new password')
mysql> QUIT
最後必殺技:
mysqladmin -u root "old password" "new password"
註:以上name請用你的用戶名來替代,new password請輸入你想要設置的密碼。

『伍』 登錄mysql 密碼忘了怎麼辦

如果不是root密碼:

連root的密碼也忘記了嗎?

沒有的話,用root進去,修改mysql資料庫user表咯。


如果是root密碼:


方法一:

MySQL提供跳過訪問控制的命令行參數,通過在命令行以此命令啟動MySQL伺服器:

safe_mysqld --skip-grant-tables&

即可跳過MySQL的訪問控制,任何人都可以在控制台以管理員的身份進入MySQL資料庫。

需要注意的是在修改完密碼以後要把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 ]

windows

  1. 以系統管理員身份登陸系統。

  2. 2.打開cmd—–net start 查看mysql是否啟動。啟動的話就停止net stop mysql.

  3. 3.我的mysql安裝在d:usrlocalmysql4in下。

  4. 4.跳過許可權檢查啟動mysql.

  5. d:usrlocalmysql4inmysqld-nt –skip-grant-tables

  6. 5.重新打開cmd。進到d:usrlocalmysql4in下:

  7. d:usrlocalmysql4inmysqladmin -uroot flush-privileges password 「newpassword」

  8. d:usrlocalmysql4inmysqladmin -u root -p shutdown 這句提示你重新輸密碼。

  9. 6.在cmd里net start mysql

  10. 7.搞定了。

  11. 2,MySQL4.1以上版本一種密碼錯誤問題的解決方法

  12. 1 # SET PASSWORD FOR 』some_user』@』some_host』 = OLD_PASSWORD(『newpwd』);

  13. 2 # FLUSH PRIVILEGES;

  14. 3,Mysql資料庫修復

  15. myisamchk -r -q d:mysqldatalatin1*

  16. r代表修復

  17. q代錶快速

  18. d:mysqldatalatin1*資料庫裡面 *代表裡面的所有的文件

方法三:

如果你忘記了你的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安裝目錄中datamysql的全部內容(要先停止MySQL服務)

3,Copy新裝的電腦上MySQL安裝目錄中datamysql的全部內容 to 剛剛刪除的目錄中

4,啟動MySQL服務


這樣就只有一個root用戶了,密碼為空……

『陸』 mysql的密碼忘記了怎麼辦

第一步:在命令行輸入net stop mysql命令關閉mysql服務
第二步:使用--skip-grant-tables選項啟動mysql服務(伺服器將不載入許可權判斷,任何用戶 都能訪問資料庫)
在命令行輸入 mysqld --skip-grant-tables
命令運行之後,用戶無法再輸入指令,此時如果在任務管理器中可以看到名稱為 mysqld的進程,則表示可以用root用戶 登錄伺服器了
第三步:打開另一個命令行窗口,輸入不加密碼的登錄命令
mysql -u root
登錄成功後可以使用update語句修改密碼
修改完成後,必須使用flush privileges語句刷新許可權表,這樣新的密碼才能生效
第四步:將輸入mysqld --skip-grant-tables命令的命令行窗口關閉,接下來就可以使用新密碼登錄mysql伺服器了

『柒』 mysql 忘記密碼後如何修改和查看

1.在命令行運行:taskkill
/f
/im
mysqld-nt.exe
2.繼續在命令行運行:mysqld-nt
--skip-grant-tables
3.新開一個命令行運行:mysql
-u
root
(如果沒有配置mysql的bin環境變數的話需要切換到bin目錄下執行此語句)
如果不想改密碼,只是想看原來的密碼的話。可以在命令行執行這個語句
select
host,user,password
from
mysql.user;//即可查看到用戶和密碼
如果要修改密碼的話,在命令行下執行下面的語句
update
mysql.user
set
password='這里填寫你要設置的密碼'
where
user='root';
完成這些操作後,繼續在命令行運行

『捌』 mysql忘記密碼怎麼修改

1.以系統管理員身份登陸系統。
2.打開cmd-----net start 查看mysql是否啟動。啟動的話就停止net stop mysql.
3.我的mysql安裝在d:\usr\local\mysql4\bin下。
4.跳過許可權檢查啟動mysql.
d:\usr\local\mysql\bin\mysqld-nt --skip-grant-tables
5.重新打開cmd。進到d:\usr\local\mysql4\bin下:
d:\usr\local\mysql\bin\mysqladmin -u root flush-privileges password "newpassword"
d:\usr\local\mysql\bin\mysqladmin -u root -p shutdown 這句提示你重新輸密碼。
6.在cmd里net start mysql

『玖』 mysql 忘記密碼 怎麼修改密碼

1、打開mysql.exe和mysqld.exe所在的文件夾,復制路徑地址

2、打開cmd命令提示符,進入上一步mysql.exe所在的文件夾。

3、輸入命令 mysqld --skip-grant-tables 回車,此時就跳過了mysql的用戶驗證。4、注意輸入此命令之後命令行就無法操作了,此時可以再打開一個新的命令行。注意:在輸入此命令之前先在任務管理器中結束mysqld.exe進程,確保mysql伺服器端已結束運行。

5、然後直接輸入mysql,不需要帶任何登錄參數直接回車就可以登陸上資料庫。

6、輸入show databases; 可以看到所有資料庫說明成功登陸。

7、其中mysql庫就是保存用戶名的地方。輸入 use mysql; 選擇mysql資料庫。

8、show tables查看所有表,會發現有個user表,這里存放的就是用戶名,密碼,許可權等等賬戶信息。

9、輸入select user,host,password from user; 來查看賬戶信息。

10、更改root密碼,輸入update user set password=password('123456') where user='root' and host='localhost';

11、再次查看賬戶信息,select user,host,password from user; 可以看到密碼已被修改。

12、退出命令行,重啟mysql資料庫,用新密碼嘗試登錄。

13、測試不帶密碼登錄mysql,發現還是能夠登陸上,但顯示資料庫時只能看到兩個資料庫了,說明重啟之後跳過密碼驗證已經被取消了。

14、我這地方重啟資料庫之後之所以不帶密碼任然能夠登錄是因為我的資料庫里存在設無須口令的賬戶。

『拾』 linux mysql 忘記密碼 怎麼修改密碼

1.例如你的 root用戶現在沒有密碼,你希望的密碼修改為123456,那麼命令是:
mysqladmin -u root password 123456

2.如果你的root現在有密碼了(123456),那麼修改密碼為abcdef的命令是:
mysqladmin -u root -p password abcdef
注意,命令回車後會問你舊密碼,輸入舊密碼123456之後命令完成,密碼修改成功。

3.如果你的root現在有密碼了(123456),那麼修改密碼為abcdef的命令是:
mysqladmin -u root -p123456 password abcdef (注意-p 不要和後面的密碼分
開寫,要寫在一起,不然會出錯,錯誤如下所示)

4.使用phpmyadmin,這是最簡單的了,修改mysql庫的user表,
不過別忘了使用PASSWORD函數。

忘記密碼:
下面我們提供了6種不同的修改mysql root用戶的密碼,與增加mysql用戶的方法。
方法一:
使用phpmyadmin,這是最簡單的了,修改mysql庫的user表,
不過別忘了使用PASSWORD函數。

方法二:
使用mysqladmin,這是前面聲明的一個特例。
mysqladmin -u root -p password mypasswd
輸入這個命令後,需要輸入root的原密碼,然後root的密碼將改為mypasswd。
把命令里的root改為你的用戶名,你就可以改你自己的密碼了。
當然如果你的mysqladmin連接不上mysql server,或者你沒有辦法執行mysqladmin,
那麼這種方法就是無效的。
而且mysqladmin無法把密碼清空。
下面的方法都在mysql提示符下使用,且必須有mysql的root許可權:

方法三:
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
確切地說這是在增加一個用戶,用戶名為jeffrey,密碼為biscuit。
在《mysql中文參考手冊》里有這個例子,所以我也就寫出來了。
注意要使用PASSWORD函數,然後還要使用FLUSH PRIVILEGES。

方法四 :
和方法三一樣,只是使用了REPLACE語句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES

方法五:
使用SET PASSWORD語句,
mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');
擬也必須使用PASSWORD()函數,
但是不需要使用FLUSH PRIVILEGES。

方法六:
使用GRANT ... IDENTIFIED BY語句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
這里PASSWORD()函數是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同樣方法施行口令加密。
MySQL 忘記口令的解決辦法
如果 MySQL 正在運行,首先殺之: killall -TERM mysqld。
啟動 MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密碼就進入 MySQL 了。
然後就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新殺 MySQL ,用正常方法啟動 MySQL 。

其它辦法:

辦法一: 在linux下忘記mysql的密碼,咋整?有一種方法可以很快的重設密碼。
首先,關閉mysql.
這個時候你用Mysqladmin shutdown來關閉mysql基本是不可能的,為啥,因為你不知到密碼了么,用其它用戶去連接mysql庫,會提示你沒有許可權。
其次,直接用kill命令也是不行的。mysqld_safe啟動以後,如果mysqld被kill掉,這個進程會自動重啟,真是坑爹啊!
那麼,只能使出絕招了
killall -TERM mysqld
第二步,到root用戶下(或者是mysql服務的安裝用戶下)繞開安全許可權啟動mysqld
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
第三步,修改Mysql庫中的user表,重新賦予新的許可權
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
注意,這步會把所有user=root的賬戶密碼都設為這個,可以在where里加入針對性的限定條件
第四步,重新kill掉mysqld,然後重啟,一切ok

辦法二:
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-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 ]

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:944
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:741
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372