本文目錄一覽:
- 1、怎麼配置MySQL資料庫讓別人遠程訪問
- 2、如何讓別人遠程連接到自己的MySql資料庫
- 3、如何讓mysql資料庫允許被遠程連接訪問
- 4、如何允許mysql資料庫遠程訪問
- 5、如何讓其他計算機訪問我的計算機上資料庫mysql?
- 6、怎麼設置MySQL就能讓別人訪問本機的資料庫了?
怎麼配置MySQL資料庫讓別人遠程訪問
有三種方法:
方法一(不推薦)、本地登入mysql,更改 “mysql” 資料庫里的 “user” 表裡的 “host” 項,將”localhost”改為”%”
#mysql -u root -proot
mysqluse mysql;
mysqlupdate user set host = ‘%’ where user = ‘root’;
mysqlselect host, user from user;
方法二、直接授權(推薦)
從任何主機上使用root用戶,密碼:youpassword(你的root密碼)連接到mysql伺服器:(首先登陸Linux伺服器,填寫下面代碼即可)
[root@localhost software]# mysql -u root -proot
mysqlGRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
mysqlFLUSH PRIVILEGES;
操作完後切記執行以下命令刷新許可權
FLUSH PRIVILEGES;
方法三:終極方法
注釋bind-address = 127.0.0.1
找到mysql.cnf
把bind-address = 127.0.0.1 前面加上 #
即 #bind-address = 127.0.0.1
如何讓別人遠程連接到自己的MySql資料庫
MYSQL要想讓別人遠程訪問自己的資料庫,必須讓mysql庫中user表的host欄位為%,接受遠程控制請求 ,可以進入mysqluser mysql;
mysqlupdate user set host=”%” where user=”root” and host=”localhost”;這樣別人就可以通過 mysql -h xxx.xxx.xxx.xxx(你電腦的IP) -u root -p密碼 進行連接並操作資料庫了。
如何讓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
mysqlupdate user set host = ‘%’ where user = ‘root’;
mysqlselect host, user from user;
二、授權法
例如: 你想myuser使用mypassword(密碼)從任何主機連接到mysql伺服器的話。
mysqlGRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’%’IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql伺服器,並使用mypassword作為密碼
mysqlGRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.3’IDENTIFIED BY
‘mypassword’ WITH GRANT OPTION;
mysqlFLUSH 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資料庫遠程訪問
1、使用「Ctrl + R」組合鍵快速打開cmd窗口,並輸入「cmd」命令,打開cmd窗口。
2、使用「mysql -uroot -proot」命令可以連接到本地的mysql服務。
3、使用「use mysql」命令,選擇要使用的資料庫,修改遠程連接的基本信息,保存在mysql資料庫中,因此使用mysql資料庫。
如何讓其他計算機訪問我的計算機上資料庫mysql?
第一:更改 「mysql」 資料庫里的 「user」 表裡的 「host」 項,從」localhost」改稱’%’。
或者新加條記錄,「host」 項為要訪問的ip地址,並授權。重啟mysql服務。
第二:在系統防火牆添加例外埠:3306,並允許例外。
錯誤提示:
ERROR 1130: Host ‘192.168.1.3’ is not allowed to connect to this MySQL server
的解決方法:
1。改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 “mysql” 資料庫里的 “user” 表裡的 “host” 項,從”localhost”改稱”%”
1.mysql -u root -pvmware
mysqluse mysql;
mysqlupdate user set host = ‘%’ where user = ‘root’;
mysqlselect host, user from user;
2. 授權法。例如,你想myuser使用mypassword從任何主機連接到mysql伺服器的話。
GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼
GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.3’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
3.在window自帶的防火牆裡的例外添加3306埠
總結:
mysql -u root -p
mysqluse mysql;
mysqlselect ‘host’ from user where user=’root’;
mysqlupdate user set host = ‘%’ where user =’root’;
mysqlflush privileges;
mysqlselect ‘host’ from user where user=’root’;
第一句是以許可權用戶root登錄
第二句:選擇mysql庫
第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱)
第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址
第五句:刷新MySQL的系統許可權相關表
第六句:再重新查看user表時,有修改。。
重起mysql服務即可完成。
打字不易,如滿意,望採納。
怎麼設置MySQL就能讓別人訪問本機的資料庫了?
找到MySQL配置文件,搜索「bind-address」,找到這一行:
bind-address = 127.0.0.1 在前面加一個#,注釋掉這一行,保存,重啟MySQL。
再通過遠程訪問就可以了,telnet可以發現埠也打開了。
例配置:
1. 確保skip-networking被刪除或者屏蔽,否則不支持TCP/IP 訪問
2. 增加行bind-address = 65.55.55.2,替代65.55.55.2 為你的伺服器地址
修改後,配置為:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 65.55.55.2
# skip-networking
保存並關閉配置文件
重啟mysql伺服器:# /etc/init.d/mysql restart
如果上面辦法沒有用我們可以通用mysql命令模式進行設置:
可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 “mysql” 資料庫里的 “user” 表裡的 “host” 項,從”localhost”改稱”%”
CODE:mysql -u root -p123
mysqluse mysql;
mysqlupdate user set host = ‘%’ where user = ‘root’;
mysqlselect host, user from user;
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297342.html