標籤:navicat 8 8 sql connect cat article set cli oca
以下看看從網上搜集來的幾種加入Mysql使用者遠程訪問許可權的方法
MySQL上的一個資料庫要備份,裝了個MySQL的gui工具。
開啟"MySQL Navicat"工具。填好username和password卻登入不了,老是報這個錯“ERROR 1130: Host ‘lijuan-‘ is not allowed to connect to this MySQL server”。網上查了下,有這兩個方法解決:
解決方案:
1。 改表法。
可能是你的帳號不同意從遠程登陸,僅僅能在localhost。這個時候僅僅要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,從"localhost"改稱"%"
mysql>use mysql;
mysql>update user set host = ‘%‘ where user = ‘root‘;
mysql>select host, user from user;
2. 授權法。
比如。你想myuser使用mypassword從不論什麼主機串連到mysqlserver的話。
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘%‘ IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION;
假設你想同意使用者myuser從ip為192.168.1.3的主機串連到mysqlserver,並使用mypassword作為密碼
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘192.168.1.3‘ IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION;
我的mysql.user裡root使用者的host果然是localhost,先用改表法給localhost改成“%”,還是不行。仍然報1130的錯 誤,又按“從不論什麼主機串連到mysqlserver”方法授權。還是報一樣的錯。最後給自己的ip授權之後。最終登入上了。
。。。
乎乎。。
。
mysql的ERROR 1045 在上面情況後如再出現客戶段1045可在server運行例如以下
UPDATE user SET Password=PASSWORD(‘123456‘) where USER=‘myuser‘;
FLUSH PRIVILEGES;//使用者付完許可權後對資料進行重新整理時用!要不Mysql資料庫識別不了
比如:(必須參考以上再看以下的範例)
GRANT ALL ON *.* TO [email protected]‘%‘ IDENTIFIED BY ‘admin‘ WITH GRANT OPTION;
mysql "192.168.50.85" "admin" "admin" ;
GRANT ALL ON *.* TO [email protected]‘localhost‘ IDENTIFIED BY ‘admin‘ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘%‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘192.168.50.85‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;
UPDATE user SET Password=PASSWORD(‘123456‘) where USER=‘myuser‘;
FLUSH PRIVILEGES;
mysql預設是沒有開啟遠端控制的。必須加入遠程訪問的使用者。
mysql預設是沒有開啟遠端控制的,必須加入遠程訪問的使用者。 g&00 x$ Y
0VE }0(fQ
假設是安裝版的話。從mysql提供的控制台進入。 1s+<( 0R/
用root使用者登陸。然後: Q k C jgS0
grant all privileges on *.* to 建立的username @"%" identified by "password"; o! q*)`xuQ
flush privileges; * 重新整理剛才的內容* )/ z (5 3X
; (Q:LY \v
格式:grant 許可權 on 資料庫名.表名 to 使用者@登入主機 identified by "使用者password"; .=h j Qi[
@ 後面是訪問mysql的clientIP地址(或是 主機名稱) % 代表隨意的client。假設填寫 localhost 為本地訪問(那此使用者就不能遠程訪問該mysql資料庫了)。 U <T 1O 6
lp 8 z Rc
同一時候也能夠為現有的使用者佈建是否具有遠程訪問許可權。例如以下: \ch3 X X#
use mysql; o$`> :>N e
update db set host = ‘%‘ where user = ‘username‘; (假設寫成 host=localhost 那此使用者就不具有遠程訪問許可權) B Gnl: R *
FLUSH PRIVILEGES; zn 6en;&?
3 Pj_2B=
查看結果,運行: $4b 5-U
use mysql; ){[‘ 66!
select host,user,password from user; J):H\B:j_M
i oZ 0 " H
+--------------+--------+---------------+ t75 JSdQ
| Host | User | Password | XKL Di{ U
+--------------+--------+-----------------+ B*1Q< Cx5B
| localhost | | | U 8RZq(f
| % | John | 123456 | r ` Al B
| localhost | root | | H fd ZE
+--------------+------ --+---------------+ pd7= 8 8
ArJ~Vs "+
總結: ? Av L`B A
事實上MySQL預設有兩個資料庫分別為 mysql 和 test 而MySQL使用者的資訊都放在資料庫 mysql 的相關表中 gb: hj /
也能夠使用 Navicat (推薦)這種GUI工具來系統管理使用者。 HUD?
}U BB5
update user set host=‘%‘ where host=‘localhost‘
工作中用到webserver和mysqlserver不在同一台電腦上安裝的運用。須要通過mysql的遠程賬戶訪問mysql。
先上文法:
grant [許可權] on [資料庫名].[表命] to [‘使用者命‘]@[‘webserver的ip地址‘] identified by [‘password‘];
執行個體:
grant all on lportal.* to ‘root‘@‘192.168.1.21 identified by ‘root‘;
grant select,update,insert,delete on lportal.* to ‘root‘@‘192.168.1.21 identified by ‘root‘;
轉載地址:http://blog.163.com/[email protected]/blog/static/39026191200972745632454/
MySQL 資料庫實現遠端連線