MySQL 遠端登陸
這裡以 windwos 平臺為例。
當你沒有做任何 mysql 資料庫的配置,在另一臺機器上遠端訪問 mysql 時候會報錯:
命令列遠端登陸
mysql -h192.168.1.1 -uroot -p -P3306
1130 - Host 'xxxx' is not allowed to connect to this MySQL server
此時你會想到會不會是沒有給使用者新增遠端訪問的許可權,於是連線遠端機器,進入mysql,使用select user,host from mysql.user='root'
,檢視發現,果然 root 使用者只有localhost
登陸的許可權。
於是使用grant all privileges on *.* to root@'localhost' identified by '123456';
然後使用flush privileges;
重新整理許可權。
退出exit
使用net stop mysql
停止mysql服務
使用net start mysql
啟動mysql服務
然後再次登陸
使用select user,host from mysql.user='root'
發現有遠端登陸的許可權了
然後回到遠端的主機
使用navicate或者直接遠端登陸,發現還是報錯,無法登陸。
然後在網上找了n多的解決辦法,還是不行。
最後再次使用net stop mysql
之後,進入程式管理,發現mysql服務還是在啟動的狀態。。。
於是手動停止了關於mysql的所有的程式。
之後再次啟動mysql,可以在控制皮膚—》管理工具—》服務下啟動,或者直接使用net start mysql
啟動。
此時遠端登陸mysql發現可以了,主要還是沒有真正的重啟mysql伺服器。
免密登陸
- 停止伺服器
net stop mysql
在mysql.ini檔案中新增
[client]
host=localhost
user="root" #如是普通使用者輸入使用者名稱即可
password="******" #這裡填入你的mysql root(普通使用者)使用者對應的密碼
儲存退出後 重新啟動MySQL資料庫即可
- 停止伺服器後
還是在剛剛的檔案中新增
重啟之後,直接skip-grant-tables
mysql -uroot -p
回車之後就可以登陸了。
本作品採用《CC 協議》,轉載必須註明作者和本文連結