Welcome 微信登录

首页 / 数据库 / MySQL / MySQL如何开启远程访问权限

一:Windows环境
 
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
 
mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = "%" where user = "root";mysql>select 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;
 
我 的mysql.user里root用户的host果然是localhost,先用改表法给localhost改成“%”,还是不行,仍然报1130的错 误,又按“从任何主机连接到mysql服务器”方法授权,还是报一样的错,最后给自己的ip授权之后,终于登录上了。。。。
 
乎乎。。。
 
mysql的ERROR 1045 在上面情况后如再出现客户段1045可在服务器执行如下
 
UPDATE user SET Password=PASSWORD("123456") where USER="myuser";
 
FLUSH PRIVILEGES;//用户付完权限后对数据进行刷新时用!要不Mysql数据库识别不了
 
例如:(必须参考以上再看下面的例子)
 
GRANT ALL ON *.* TO admin@"%" IDENTIFIED BY "admin" WITH GRANT OPTION;
 
mysql "192.168.50.85" "admin" "admin" ;
 
GRANT ALL ON *.* TO admin@"localhost" IDENTIFIED BY "admin" WITH GRANT OPTION;
 
GRANT ALL PRIVILEGES ON *.* TO "myuser"@"%" IDENTIFIED BY "123456" WITH GRANT OPTION;
 
GRANT ALL PRIVILEGES ON *.* TO "myuser"@"192.168.50.85" IDENTIFIED BY "123456" WITH GRANT OPTION;
 
UPDATE user SET Password=PASSWORD("123456") where USER="myuser";
 
FLUSH PRIVILEGES;
 
mysql默认是没有开启远程控制的,必须添加远程访问的用户。
 
mysql默认是没有开启远程控制的,必须添加远程访问的用户。 g&00 x$ Y
 
0VE }0(fQ
 
如果是安装版的话,从mysql提供的控制台进入。 1s+<( 0R/
 
用root用户登陆,然后: Q k C jgS0
 
grant all privileges on *.* to 创建的用户名 @"%" identified by "密码"; o! q*)`xuQ
 
flush privileges; * 刷新刚才的内容* )/ z (5 3X
 
; (Q:LY v
 
格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码"; .=h j Qi[
 
@ 后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)。 U <T 1O 6
 
lp 8 z Rc
 
同时也可以为现有的用户设置是否具有远程访问权限。如下: ch3 X X#
 
use mysql; o$`> :>N e
 
update db set host = "%" where user = "用户名"; (如果写成 host=localhost 那此用户就不具有远程访问权限) B Gnl: R *
 
FLUSH PRIVILEGES; zn 6en;&?
 
3 Pj_2B=
 
查看结果,执行: $4b 5-U
 
use mysql; ){[" 66!
 
select host,user,password from user; J):HB:j_M
 
i oZ 0 " H
 
+--------------+--------+---------------+ t75 JSdQ
 
| Host | User | Password | XKL Di{ U
 
+--------------+--------+-----------------+ B*1Q< Cx5B
 
| localhost | | | U 8RZq(f
 
| % | John | 123456 | r ` Al B
 
| localhost | root | | H fd ZE
 
+--------------+------ --+---------------+ pd7= 8 8
 
ArJ~Vs "+
 
总结: ? Av L`B A
 
其实MySQL默认有两个数据库分别为 mysql 和 test 而MySQL用户的信息都放在数据库 mysql 的相关表中 gb: hj /
 
也可以使用 Navicat (推荐)这样的GUI工具来管理用户。 HUD?}U BB5
 
update user set host="%" where host="localhost"
 
工作中用到web服务器和mysql服务器不在同一台计算机上安装的运用。需要通过mysql的远程账户访问mysql。
 
先上语法:
 
grant [权限] on [数据库名].[表命] to ["用户命"]@["web服务器的ip地址"] identified by ["密码"];
 
实例:
 
grant all on lportal.* to "root"@"192.168.1.21 identified by "root";
 
grant select,update,insert,delete on lportal.* to "root"@"192.168.1.21 identified by "root";
  • 1
  • 2
  • 下一页
MySQL5.6 支持Multi-Range Read索引优化SQL Server 安全性部分实验相关资讯      MySQL基础教程  MySQL 开启远程访问  MySQL 远程访问权限  MySQL开启远程 
  • MySQL基础教程:关于varchar(N)  (01月22日)
  • 开启MySQL远程访问权限  (04/18/2013 10:24:26)
  • 如何在MySQL中的获取IP地址的网段  (02/18/2013 12:23:33)
  • 高性能MySQL(第3版) 中文PDF带目  (10/26/2014 10:03:50)
  • MySQL SELECT同时UPDATE同一张表  (02/19/2013 07:20:18)
  • Linux修改MySQL最大并发连接数  (02/15/2013 15:37:21)
本文评论 查看全部评论 (0)
表情: 姓名: 字数