訪問m
Mysql資料庫伺服器部署在內網環境,區域網內可以訪問mysql資料庫,內網也可以上外網。利用nat123如何實現外網訪問到內網mysql資料庫?下面是我跟大家分享的是外網如何訪問區域網內網的mysql資料庫,歡迎大家來閱讀學習。
外網如何訪問區域網內網的mysql資料庫
外網訪問內網的mysql資料庫的方法
首先要確保內網應用正常。明確內網mysql資料庫訪問地址,並確保mysql資料庫服務正常。如本地mysql資料庫訪問地址是localhost:3306。

② MySQL訪問步驟
1、打開客戶端(CMD控猛戚制台) : mysql.exe
2、輸入伺服器信息(連接逗亮)和用戶信息(驗證山知寬)
3、執行SQL操作
4、斷開連接
③ 如何遠程訪問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>
④ php訪問mysql資料庫說法錯誤的是
PHP連接資料庫Mysql錯誤:Fatal error: Call to undefined function mysql_connect() in。。。(某個php文件的地址)
此錯誤是出現在安裝並配置好PHP、Mysql、Apache伺服器的情況下產生的。
我在網上查找了很多原因,並嘗試著修改之後成功了,將解決方法跟大家交流下。
1、在PHP安裝目錄之下,找到php.ini,在此文件中將「;extension=php_mysql.dll」引號中句子前的分號去掉。表明php可以載入此mysql模塊,當然也可以選擇其他要載入的模塊,去掉其前面的分號,但是模塊載入得越州肢配多,佔用的資源越多。
2、載入了模塊之後,就需要指明模塊所在的位置,比較簡單的方式是直接修改環境變數。
具體操作為:
右鍵」我的電腦」 -> 「屬性」 -> 「高級」 -> 「環境變數」,編輯「系統變數」下的「Path」,在原來的值後加上「;E:\php\php5;E:\php\php5\ext」。(「E:\php\php5」為php的安裝目錄)
系統路徑添加好之後需要重啟計算機才能生效。
3、將php安裝目錄下的libmysql.dll拷貝至apache服務飢晌器的bin目錄之下。
4、所有的配置冊指修改好之後,需要重啟apache伺服器。
測試代碼:test.php(其中,user為MySQL的用戶名,userpassword為MySQL的對應用戶密碼)
⑤ 如何登錄mysql
當MySQL服務開啟後,就可以通過客戶端來登錄 MySQL 資料庫了。在 Windows 操作系統下可以使用 DOS 命令登錄資料庫,本節將介紹使用命令方式登錄 MySQL 資料庫的方法。
登錄 MySQL 資料庫的具體操作步驟如下:
步驟 1):單擊「開始」→「Windows 系統」→「命令提示符」,如圖所示。
⑥ MySQL如何訪問
●客戶端訪問服務端
。薯陵宏利用Windows控制台訪問(MySQL客戶汪野端)
。利用資料庫管理工具(Navicat)
●客戶端需要連接認證
。-h: 主機地址(本機localhost可以省略)
。-P: 埠號(默認3306可以省略)
。-u: 用戶名
。數冊-p: 用戶密碼
⑦ 怎樣設置才能允許外網訪問MySQL
設置mysql服務允許外網訪問,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.1:設置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 將其鏈培注釋掉;//作用是使得不再只允許本地訪問;
棚彎唯重啟mysql:/etc/init.d/mysql restart;
2:登錄mysql資料庫:mysql -u root -p
mysql> use mysql;
查詢host值:
mysql> select user,host from user;
如果沒有"%"這個host值,就執行下面這兩句:
mysql> update user set host='鬧陸%' where user='root';
mysql> flush privileges;
或者也可以執行:
mysql>grand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一個*表示資料庫名;第二個*表示該資料庫的表名;如果像上面那樣 *.*的話表示所有到資料庫下到所有表都允許訪問;
『%':表示允許訪問到mysql的ip地址;當然你也可以配置為具體到ip名稱;%表示所有ip均可以訪問;
後面到『xxxx'為root 用戶的password;
舉例:
任意主機以用戶root和密碼mypwd連接到mysql伺服器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP為192.168.1.102的主機以用戶myuser和密碼mypwd連接到mysql伺服器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
⑧ 如何讓mysql資料庫允許被遠程連接訪問
第一:更改 「mysql」 資料庫里的 「user」 表裡的 「host」 項,從」localhost」改稱'%'。 x0dx0a或者新加條記錄,「host」 項為要訪問的ip地址,並授權。重啟mysql服務。 x0dx0a第二:在系統防火牆添加例外埠:3306,並允許例外。 x0dx0ax0dx0a錯誤提示: x0dx0aERROR 1130: Host 餘.168.1.3' is 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 'mypassword' WITH GRANT OPTION; x0dx0a如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼 x0dx0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@餘.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; x0dx0ax0dx0a3.在window自帶的防火牆里的例外添加3306埠 x0dx0ax0dx0a總結: x0dx0amysql -u root -p x0dx0amysql>use mysql; x0dx0amysql>select 'host' from 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資料庫詳解
默認情況下,mysql只允許本地登錄,如果要開啟遠程連接,則需要修改/etc/mysql/my.conf文件。
一、修改/etc/mysql/my.conf
找到bind-address = 127.0.0.1這一行
改為bind-address = 0.0.0.0即可
二、為需要遠程登錄的用戶賦予許可權
1、新建用戶遠程連接mysql資料庫
grant all on *.* to admin@'%' identified by '123456' with grant option;
flush privileges;
允許任何ip地址(%表示允許任何ip地址)的電腦用admin帳戶和密碼(123456)來訪問這個mysql server。
注意admin賬戶不一定要存在。
2、支持root用戶允許遠程連接mysql資料庫
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;
三、查看系統用戶