基于安全考虑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
执行完上面的三步后,就可以通过远程机器连接了数据库了。
⑵ 怎样连接远程mysql数据库
1,确认你的linux主机是否能够连接你的win7主机,可用ping命令或者telnet命令
ping
192.168.1.139或者telent
192.168.1.139
3306
2,如果你的linux主机与你的win7主机路由是通的,在你的win7的控制面板上打开防火墙设置,确认你的3306端口没有被防火墙屏蔽。
3,如果以上都没有问题,请检查你的mysql数据库是否设置了连接权限:
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'root'@'%'
IDENTIFIED
BY
'11112222'
WITH
GRANT
OPTION;
是授权jack用户密码是123456在IP地址10.10.50.127的地址登陆,也可以用通配符%代替IP表示任何地址。
⑶ 如何让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数据库详解
默认情况下,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;
三、查看系统用户
⑸ mysql 怎么设置允许远程连接数据库
首先我们在linux系统上安装mysql,本文默认linux系统可以联网或者已经挂载光盘iso了,我们使用命令 apt-get install mysql-server 命令进行安装,安装完成后,查看mysql是否启动,执行命令 ps -e |grep mysql。
⑹ 用MysQL怎么进行远程连接数据库
1、首先在电脑端登陆数据服务器进行操作,如图所示。
⑺ 如何用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远程连接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 数据库开启远程连接的介绍,望你能有所收获。
⑼ 怎样远程访问mysql数据库
你说的是用mysql的客户端访问远程数据库吧。这个跟访问你本地的数据库是一样的,但是你要注意的是远程的数据库是不是允许你远程访问,如果人家的数据库不让远程访问,那你怎么也是不可能访问到的。现在的一般人家是不允许你远程访问的,这样比较安全;如果可以的话那你就跟访问你本地的一样,输入ip,帐号,密码就可以进了。。。
⑽ 命令行如何远程连接MySQL数据库
1、登陆服务器端,进入命令行,windows cmd; 2、设置用户、密码让指定的IP访问:mysql -u root -p 或安装的快捷方式进入:MySQL Command Line Client,使用grant命令: grant 权限1,权限2,权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';例子:mysqlgrant select,insert,update,delete,create,drop on mydb.mytable to [email protected] identified by 'mypassword';给来自192.168.1.88 的用户lzpddd分配可对数据库 mydb的mytable表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为'mypassword'; mysqlgrant all privileges on *.* to [email protected] identified by 'mypassword';给来自192.168.1.88 的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword'; mysqlgrant all privileges on *.* tolzpddd@'%'identified by 'mypassword';给来自任何IP地址的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword'; 3、关闭服务器端防火墙或者开放3306端口(很重要); 4、客户端连接: 进入命令行,windows cmd,连接: mysql -u 用户名 -p密码 -h服务器IP地址 -P服务器端MySQL端口号 -D 数据库名注意:(1)服务器端口标志-P一定要大些以区别于用户-p,如果直接连接数据库标志-D也要大写; (2)如果要直接输入密码-p后面不能留有空格如-pmypassword; (3)命令结束段没有';'分号。