A. 如何遠程訪問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;
三、查看系統用戶
B. 如何配置遠程MySQL連接
允許root用戶在任何地方進行遠程登錄,並具有所有庫任何操作許可權,具體操作如下:
1.在本機先使用root用戶登錄mysql:
mysql -u root -p"youpassword"
2.進行授權操作:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
3.重載授權表:
FLUSH PRIVILEGES;
4.退出mysql資料庫:
exit
C. 如何配置mysql的root用戶允許遠程登錄
基於安全考慮root賬戶一般只能本地訪問,但是在開發過程中可能需要打開root的遠程訪問許可權。下面是基本的步驟:
1、登錄到MySQL中,為root進行遠程訪問的授權,執行下面的命令:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
mysql> flush privileges;
第一句中"%"表示任何主機都可以遠程登錄到該伺服器上訪問。如果要限制只有某台機器可以訪問,將其換成相應的IP即可,如:
GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";
第二句表示從mysql資料庫的grant表中重新載入許可權數據。因為MySQL把許可權都放在了cache中,所以在做完更改後需要重新載入。
2、修改/etc/mysql/my.cnf,需要root用戶許可權。找到文件中的:
[ruby] view plain print?
bind-address = 127.0.0.1
將其注釋掉,保存。
3、重新啟動MySQL伺服器。執行下面的幾條命令即可:
# /usr/bin/mysqladmin -u root -p shutdown
# /usr/bin/mysqld_safe &
如果mysqladmin和mysql_safe不在/usr/bin目錄中,可以通過whereis命令查找,例如:
# whereis mysqladmin
mysqladmin: /usr/bin/mysqladmin /usr/share/man/man1/mysqladmin.1.gz
執行完上面的三步後,就可以通過遠程機器連接了資料庫了。
D. 伺服器mysql怎麼配置才能遠程連接
設置mysql資料庫遠程連接:
Windows系統
1、 停止mysql的服務。
2、 進入命令窗口,然後進入MySQL的安裝目錄,比如我的安裝目錄是c:\mysql,進入c:\mysql\bin
3、 進入mysql資料庫伺服器
c:\mysql\bin>mysql –u root –p hkgt123
4、 選中資料庫mysql :use mysql
5、 查詢mysql資料庫中的用戶:
Select host,user,password from mysql;
6、 授權給root用戶可以從任何主機使用密碼為』hkgt123』登錄MYSQL資料庫:
GRANT ALL PRIVILEGES ON *.* TO root@』%』 IDENTIFIED BY 『hkgt123』 WITH GRANT OPTION;
7、 提交:commit;
8、 刷新許可權:flush privileges;
E. 如何開啟遠程登陸mysql
開啟 MySQL 的遠程登陸帳號有兩大步:
1、確定伺服器上的防火牆沒有阻止 3306 埠。
MySQL 默認的埠是 3306 ,需要確定防火牆沒有阻止 3306 埠,否則遠程是無法通過 3306 埠連接到 MySQL 的。
如果您在安裝 MySQL 時指定了其他埠,請在防火牆中開啟您指定的 MySQL 使用的埠號。
如果不知道怎樣設置您的伺服器上的防火牆,請向您的伺服器管理員咨詢。
2、增加允許遠程連接 MySQL 用戶並授權。
1)首先以 root 帳戶登陸 MySQL
在 Windows 主機中點擊開始菜單,運行,輸入「cmd」,進入控制台,MySQL 的 bin 目錄下,然後輸入下面的命令。
在 Linux 主機中在命令提示行下輸入下面的命令。
CODE: [COPY]
> MySQL -uroot -p123456
123456 為 root 用戶的密碼。
2)創建遠程登陸用戶並授權
CODE: [COPY]
> grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';
上面的語句表示將 discuz 資料庫的所有許可權授權給 ted 這個用戶,允許 ted 用戶在 123.123.123.123 這個 IP 進行遠程登陸,並設置 ted 用戶的密碼為 123456 。
下面逐一分析所有的參數:
all PRIVILEGES 表示賦予所有的許可權給指定用戶,這里也可以替換為賦予某一具體的許可權,例如:select,insert,update,delete,create,drop 等,具體許可權間用「,」半形逗號分隔。
discuz.* 表示上面的許可權是針對於哪個表的,discuz 指的是資料庫,後面的 * 表示對於所有的表,由此可以推理出:對於全部資料庫的全部表授權為「*.*」,對於某一資料庫的全部表授權為「資料庫名.*」,對於某一資料庫的某一表授 權為「資料庫名.表名」。
ted 表示你要給哪個用戶授權,這個用戶可以是存在的用戶,也可以是不存在的用戶。
123.123.123.123 表示允許遠程連接的 IP 地址,如果想不限制鏈接的 IP 則設置為「%」即可。
123456 為用戶的密碼。
執行了上面的語句後,再執行下面的語句,方可立即生效。
CODE: [COPY]
> flush privileges;
F. 怎麼用mysql登錄遠程伺服器
MySQL允許遠程訪問的設置
1.注釋bind-address = 127.0.0.1。
代碼如下:
>cd /etc/mysql
>sudo vim my.cnf
將bind-address = 127.0.0.1注釋掉(即在行首加#),如下:
代碼如下:
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1
除了注視掉這句話之外,還可以把後面的IP地址修改成允許連接的IP地址。但是,如果只是開發用的資料庫,為了方便起見,還是推薦直接注釋掉。
從上面的注釋中,可以看出,舊版本的MySQL(從一些資料上顯示是5.0及其以前的版本)上使用的是skip-networking。所以,善意提醒一下,使用舊版本的小夥伴請注意一下。
2.刪除匿名用戶
登錄進資料庫:
代碼如下:
>mysql -uroot -p123456
然後,切換到資料庫mysql。SQL如下:
代碼如下:
use mysql;
然後,刪除匿名用戶。SQL如下:
代碼如下:
delete from user where user='';
3.增加允許遠程訪問的用戶或者允許現有用戶的遠程訪問。
接著上面,刪除匿名用戶後,給root授予在任意主機(%)訪問任意資料庫的所有許可權。SQL語句如下:
代碼如下:
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
如果需要指定訪問主機,可以把%替換為主機的IP或者主機名。另外,這種方法會在資料庫mysql的表user中,增加一條記錄。如果不想增加記錄,只是想把某個已存在的用戶(例如root)修改成允許遠程主機訪問,則可以使用如下SQL來完成:
代碼如下:
update user set host='%' where user='root' and host='localhost';
4.退出資料庫
代碼如下:
mysql> exit
在MySQL Shell執行完SQL後,需要退出到Bash執行系統命令,需要執行exit。因為這個太常用也太簡單。以下內容就提示「退出」,不再重復列出這個命令。
5.重啟資料庫
完成上述所有步驟後,需要重啟一下資料庫,才能讓修改的配置生效。執行如下命令重啟資料庫:
代碼如下:
>sudo service mysql restart
到此為止,應該就可以遠程訪問資料庫了。
G. 如何配置mysql遠程連接mysql資料庫伺服器
第一中方法:比較詳細
以下的文章主要介紹的是MySQL 資料庫開啟遠程連接的時機操作流程,其實開啟MySQL
資料庫遠程連接的實際操作步驟並不難,知識方法對錯而已,今天我們要向大家描述的是MySQL 資料庫開啟遠程連接的時機操作流程。
1、d:\MySQL\bin\>MySQL -h localhost -u root
這樣應該可以進入MySQL伺服器
復制代碼
代碼如下:
MySQL>update user set host = '%' where
user = 'root';
MySQL>select host, user from user;
2、MySQL>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY
'mypassword' WITH GRANT OPTION
予任何主機訪問數據的許可權
3、MySQL>FLUSH
PRIVILEGES
修改生效
4、MySQL>EXIT
退出MySQL伺服器
這樣就可以在其它任何的主機上以root身份登錄啦!
以上的相關內容就是對MySQL 資料庫開啟遠程連接的介紹,望你能有所收獲。
H. 如何連接遠程伺服器的資料庫mysql
mysql -h地址 -u用戶 -p密碼 -P埠
注意:mysql配置里,要允許遠程連接,留意bind-address的配置,注釋掉此項,或者,在此項後添加mysql伺服器的ip地址。
再一個,遠程連接要在mysql里授權
I. 如何連接遠程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>