当前位置:首页 > Mysql教程 > 列表

mysql远程连接及mysql授权方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-24 16:43:31 浏览: 评论:0 

Linux环境下,安装mysql完成之后,就可以使用root帐户,操作本地数据库了,如果使用服务器端程序脚本(php)或者远程连接mysql,来访问和操作localhost的mysql,就需要给mysql用户授权.

远程访问,不想公布root账户,可以在mysql数据库user表创建一个demo账户,允许demo账户在任何地方都能访问mysql数据库中的指定库,下面是具体操作:

在安装mysql的机器上运行,选择mysql这个库.

1,需要创建user用户demo,密码为:123456,代码如下:

CREATE USER demo IDENTIFIED BY “123456”

2,给demo用户授权(这里指定shandong这个数据库的所有权限)并可以远程访问,代码如下:

GRANT ALL PRIVILEGES ON shandong.* TO 'demo'@'%'WITH GRANT OPTION 

上两条sql可以直接使用下面一条sql操作实现,赋予任何主机访问数据的权限,代码如下:

GRANT ALL PRIVILEGES ON shandong.* TO 'demo'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION; 

3,修改生效,代码如下:FLUSH PRIVILEGES; 

退出mysql服务器,这样就可以在其它任何的主机上以demo身份登录.

常见远程连接mysql报错解决方法:

1、当用客户端连接 mysql 时,发现无法连接,看来需要对用户进行重新授权,操作代码如下:

grant ALL PRIVILEGES ON *.* to root@"%" identified by "mysql" WITH GRANT OPTION;

此刻,root 可以被远程连接mysql,当然这里建立其他非 root 用户也可以远程连接.

2、MySQL 1130错误解决方法:

通过MySQL-Front或MySQL administrator连接MySQL的时候发生的这个错误:

ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server

说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录,需更改 MySQL 数据库里的 user表里的 host项,把localhost改称%,操作如下:

update user set host='%' where user = 'root';//phpfensi.com

flush privileges;//使权限立刻生效 

再远程连接mysql,连接...成功.

Tags: mysql远程连接 mysql授权

分享到: