⑴ 如何讓mysql資料庫允許被遠程連接訪問
第一:更改 「mysql」 資料庫里的 「user」 表裡的 「host」 項,從」localhost」改稱'%'。 x0dx0a或者新加條記錄,「host」 項為要訪問的ip地址,並授權。重啟mysql服務。 x0dx0a第二:在系統防火牆添加例外埠:3306,並允許例外。 x0dx0ax0dx0a錯誤提示: x0dx0aERROR 1130: Host 餘.168.1.3is not allowed to connect to this MySQL server x0dx0a的解決方法: x0dx0a1。改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫里的 "user" 表裡的 "host" 項,從"localhost"改稱"%" x0dx0a1.mysql -u root -pvmwarex0dx0amysql>use mysql;x0dx0amysql>update user set host = '%where user = 'root'x0dx0amysql>select host, user from user; x0dx0ax0dx0a2. 授權法。例如,你想myuser使用mypassword從任何主機連接到mysql伺服器的話。 x0dx0ax0dx0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%IDENTIFIED BY 'mypasswordWITH GRANT OPTION; x0dx0a如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼 x0dx0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@餘.168.1.3IDENTIFIED BY 'mypasswordWITH GRANT OPTION; x0dx0ax0dx0a3.在window自帶的防火牆里的例外添加3306埠 x0dx0ax0dx0a總結: x0dx0amysql -u root -p x0dx0amysql>use mysql; x0dx0amysql>select 'hostfrom user where user='root' x0dx0amysql>update user set host = '%where user ='root' x0dx0amysql>flush privileges; x0dx0amysql>select 'host from user where user='root' x0dx0a第一句是以許可權用戶root登錄 x0dx0a第二句:選擇mysql庫 x0dx0a第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱) x0dx0a第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址 x0dx0a第五句:刷新MySQL的系統許可權相關表 x0dx0a第六句:再重新查看user表時,有修改。。 x0dx0a重起mysql服務即可完成。
⑵ 如何實現mysql資料庫的異地訪問
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://改成自己要連接資料庫的ip地址,和資料庫名" />
<property name="username" value="name" />
<property name="password" value="pwd" />
⑶ 怎麼設置才能讓外網ip可以訪問mysql資料庫
1、首先檢查mysql所在伺服器的防火牆,如果限制了外網對3306埠的連接,那麼放開限制
Linux伺服器中執行
iptables -L 可以查看當前的防火牆規則
iptables -F 可以清空所有防火牆規則
2、確保mysql的監聽地址是0.0.0.0
監聽地址是0.0.0.0 ,表示該mysql允許所有IP地址進行連接,這是允許遠程連接的基礎
監聽地址是127.0.0.1,則代表該mysql只允許所在伺服器本機連接,外網是無法連接的
怎麼知道mysql的監聽地址是多少
Linux伺服器中執行如下命令可以查看: netstat -nutlp|grep mysql
3、添加遠程連接mysql的賬號
此步驟是必須要操作的,mysql本身的用戶只能在本機上連接資料庫,外網連接的話,需要先添加遠程用戶並授權。
在mysql命令行模式下,或者phpmyadmin中執行sql語句添加遠程連接用戶
> grant all on *.* to root@'%' identified by '123456';
> flush privileges;
命令解釋:
*.* 第一個*表示庫,第二個*表示表; *.*對全部資料庫的全部表授權,so.ok 表示只對so這個庫中的ok表授權
root 表示要給哪個用戶授權,這個用戶可以是存在的用戶,也可以是不存在的
'%' 表示允許遠程連接的IP地址,%代表允許所有IP連接
只允許某個IP遠程連接,可以寫成'123.123.123.123'
只允許123.123.123.*這個網段遠程連接,可以寫成 '123.123.123.%' '123456' 是設置授權用戶的連接密碼
flush privileges; 代表立即刷新許可權表,使添加的用戶生效
上面三步都設置好了,就可以再次嘗試遠程連接mysql了。
⑷ 如何在其他區域網中連接本區域網內的MySQL資料庫
兩個不同的網路中間必經過路由器,否則沒法通信。按照這個原則,你要將 192.168.1.abc 這台帶MYSQL的電腦在路由器中做一個埠映射,然後你在其他網路中遠程連接這個映射後的IP:3306,就能訪問到192.168.1.abc上的MYSQL了。
或者在路由器中將這台MYSQL電腦做一個DMZ
⑸ 如何實現一台伺服器連接另一台伺服器mysql資料庫方法
1、mysql資料庫(例如192.168.1.1)需要創建允許遠程訪問的用戶。可以指定IP或允許所有IP
2、例如#創建資料庫,允許user01在192.168.1.5訪問
mysql -uroot -p123456 -e"create database db01"
#創建用戶
mysql -uroot -p123456 -e"CREATE USER 'user01'@'192.168.1.5' IDENTIFIED BY 『123456』;"
mysql -uroot -p123456 -e"GRANT ALL ON db01.* TO 'user01'@'192.168.1.5';"
3、例如#創建資料庫,允許user01在%(任意IP)訪問
mysql -uroot -p123456 -e"CREATE USER 'user01'@'%' IDENTIFIED BY 『123456』;"
mysql -uroot -p123456 -e"GRANT ALL ON db01.* TO 'user01'@'%';"
4、查詢user和相應host
select user,host from user;
5、遠程訪問mysql測試
mysql -uroot -p123456 -h 192.168.1.1
⑹ 怎麼配置MySQL資料庫讓別人遠程訪問
有三種方法:
方法一(不推薦)、本地登入mysql,更改"mysql"資料庫里的"user"表裡的"host"項,將"localhost"改為"%"
#mysql-uroot-proot
mysql>usemysql;
mysql>updateusersethost='%'whereuser='root';
mysql>selecthost,userfromuser;
方法二、直接授權(推薦)
從任何主機上使用root用戶,密碼:youpassword(你的root密碼)連接到mysql伺服器:(首先登陸Linux伺服器,填寫下面代碼即可)
[root@localhostsoftware]#mysql-uroot-proot
mysql>GRANTALLPRIVILEGESON*.*TO'root'@'%'IDENTIFIEDBY'youpassword'WITHGRANTOPTION;
mysql>FLUSHPRIVILEGES;
操作完後切記執行以下命令刷新許可權
FLUSHPRIVILEGES;
方法三:終極方法
注釋bind-address=127.0.0.1
找到mysql.cnf
把bind-address=127.0.0.1前面加上#
即#bind-address=127.0.0.1
⑺ 外網如何訪問區域網內網的mysql資料庫
Mysql資料庫伺服器部署在內網環境,區域網內可以訪問mysql資料庫,內網也可以上外網。利用nat123如何實現外網訪問到內網mysql資料庫?下面是我跟大家分享的是外網如何訪問區域網內網的mysql資料庫,歡迎大家來閱讀學習。
外網訪問內網的mysql資料庫的方法
首先要確保內網應用正常。明確內網mysql資料庫訪問地址,並確保mysql資料庫服務正常。如本地mysql資料庫訪問地址是localhost:3306。
⑻ 如何遠程訪問MySQL資料庫詳解
一、連接遠程資料庫:
1、顯示密碼
如:MySQL
連接遠程資料庫(192.168.5.116),埠「3306」,用戶名為「root」,密碼「123456」
C:/>mysql
-h
192.168.5.116
-P
3306
-u
root
-p123456
2、隱藏密碼
如:MySQL
連接本地資料庫,用戶名為「root」,
C:/>mysql
-h
localhost
-u
root
-p
Enter
password:
二、配置mysql允許遠程鏈接
默認情況下,mysql帳號不允許從遠程登陸,只能在localhost登錄。本文提供了二種方法設置mysql可以通過遠程主機進行連接。
一、改表法
在localhost登入mysql後,更改
"mysql"
資料庫里的
"user"
表裡的
"host"
項,將"localhost"改稱"%"
例如:
#mysql
-u
root
-p
Enter
password:
……
mysql>
mysql>update
user
set
host
=
'%'
where
user
=
'root';
mysql>select
host,
user
from
user;
二、授權法
例如:
你想myuser使用mypassword(密碼)從任何主機連接到mysql伺服器的話。
mysql>GRANT
ALL
PRIVILEGES
ON
*.*
TO
'myuser'@'%'IDENTIFIED
BY
'mypassword'
WITH
GRANT
OPTION;
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql伺服器,並使用mypassword作為密碼
mysql>GRANT
ALL
PRIVILEGES
ON
*.*
TO
'myuser'@'192.168.1.3'IDENTIFIED
BY
'mypassword'
WITH
GRANT
OPTION;
mysql>FLUSH
PRIVILEGES
使修改生效,就可以了
常見問題:
1、在採用法二授權法之後,無法在本地登錄mysql(如:#mysql
-u
root
-p
-h
192.168.5.116
Enter
password:
ERROR
1045
(28000):
Access
denied
for
user
'root'@'loadb116'
(using
password:
YES)
上例中loadb116是主機名.
解決方法:
1、這時可以使用:mysql
-u
root
-p
登錄,進入到mysql後。
mysql>
grant
all
privileges
on
*.*
to
'root'@'loadb116'
identified
by
'123456'
with
grant
option;
Query
OK,
0
rows
affected
(0.00
sec)
mysql>
flush
privileges;
Query
OK,
0
rows
affected
(0.00
sec)
2、在本地使用ip地址登錄
#
mysql
-u
root
-p
-h
192.168.5.116
Enter
password:
Welcome
to
the
MySQL
monitor.
Commands
end
with
;
or
/g.
Your
MySQL
connection
id
is
60
Server
version:
5.1.45
MySQL
Community
Server
(GPL)
Type
'help;'
or
'/h'
for
help.
Type
'/c'
to
clear
the
buffer.
mysql>
⑼ 如何訪問遠程伺服器上的mysql資料庫
首先確定已經安裝並且能夠使用,而且資料庫的遠程訪問已開啟;
如果對方不是固定的IP,則可以使用花生殼來充當固定的IP,花生殼的安裝,及具體的使用方法,請參考另一篇經驗 《申請一個免費域名及遠程桌面》;
接下來便是訪問了
首先在運行輸入 cmd
這樣便打開了命令提示符,如下:
打開了之後在此輸入 mysql -h你的IP或者花生殼的賬戶 -uroot -p該資料庫的密碼
例如:mysql -h30.158.59.78 -uroot -pabc123
mysql -htom.xicp.net -uroot -pabc123
10
完成
⑽ 如何讓別人遠程連接到自己的MySql資料庫
MYSQL要想讓別人遠程訪問自己的資料庫,必須讓mysql庫中user表的host欄位為%,接受遠程式控制制請求 ,可以進入mysql>user mysql;
mysql>update user set host="%" where user="root" and host="localhost";這樣別人就可以通過 mysql -h xxx.xxx.xxx.xxx(你電腦的IP) -u root -p密碼 進行連接並操作資料庫了。