mysql數據庫可以遠程連接或者說用IP地址可以訪問
一般情況不建議直接修改root的權限,
先看下,自己mysql數據庫的用戶級權限
mysql -u root -p----->用root登陸
use mysql------->切換到mysql數據庫(這個mysql是數據庫的名字,---->安裝的時候系統自帶的吧)
可以看到我的是這樣的,至於為什么有2個root我還不太清楚,我記得mysql安裝的時候有個選項是---(是否可以遠程訪問)可能第一個root是這個作用吧,而我們常用的是第2個root。wls是我新建的用戶,這個用戶是可以用IP地址登陸的。
具體創建過程:
方法一:
1、我們現在增加一個'wls'用戶,密碼為'ybsoft',讓其能夠從外部訪問MYSQL。輸入
grant all on * to 'wls' identified by 'ybsoft';
2、現在看看用戶表內容。輸入select user,host from user ; 可以看到"wls"用戶已經加進去了,並且其權限為'% '。
3、我們現在可以用wls用戶在局域網或互聯網中以IP方式訪問了。
mysql -h 192.168.0.115 -u wls-p
4、FLUSH PRIVILEGES //修改生效
5、bind-address= 127.0.0.1注釋掉即可------>在my.ini中找到bind-address=0.0.0.0就是所有IP地址都能訪問,也可以不要這個屬性,具體情況自己試試就知道了。
方法二:
改表法。
可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql后,更改 "mysql" 數據庫里的 "user" 表里的 "host" 項,從"localhost"改稱"%"
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
授權法。
例如,你想myuser使用mypassword從任何主機連接到mysql服務器的話。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql服務器,並使用mypassword作為密碼
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql服務器的dk數據庫,並使用mypassword作為密碼
GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
