如果本機可以連接,別的電腦無法訪問時
可以先檢查MySQL端口(默認為:3306)是否被防火墻攔截,簡單的辦法是關閉防火墻和殺毒軟件等應用來判斷。
如果還沒能訪問的話,那就用本機客戶端工具連接,查看mysql庫中user表,這是系統中的連接用戶的表。查看有沒有root@%的用戶,%代表任意的其他電腦。如果沒有這個用戶,那么先創建這個用戶:
# 創建密碼為123456的root@%用戶
CREATE USER 'root'@'%' IDENTIFIED BY '123456'
給root@%用戶授以全部的權限:
# 給用戶授以全部的權限
GRANT ALL ON *.* TO 'root'@'%'
# 給用戶授以全部的權限,并同時修改用戶密碼為123
GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123';
如果本機都無法連接怎么辦呢?
如果忘記了 MySQL 的 root 密碼,Windows操作系統下可以用以下方法重新設置:
KILL掉系統里的MySQL進程;
在命令提示符下(CMD),進入到MYSQL的BIN目錄,用以下命令啟動MySQL,以不檢查權限的方式啟動;
mysqld-nt --skip-grant-tables然后重新開打一個命令提示符的窗口(CMD)用空密碼方式使用root用戶登錄MySQL;
mysql -u root
- mysql5.7修改root用戶的密碼;
mysql> update mysql.user set password=PASSWORD('root') where User='root';
mysql> flush privileges;
mysql> quit
mysql8會不一樣:
ALTER USER 'root'@'%' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY 'root';
- 重新啟動MySQL服務,就可以使用新密碼登錄了