原帖:http://www.jb51.net/article/31902.htm
MYSQL的安装很简单,单机安装基本可以用‘绿色版’形容,解压,配置文件,创建服务,OK,本地连接没有问题,接下来就是配置远程连接,MYSQL没有ORACLE监听那种概念,要做一些简单的设置。
1.首先保证3360端口有效
关闭防火墙,查看端口号等
2.确定那个用户需要远程访问
有2种方法,远程访问,当然访问可以做一些限制,如果不想公布root账户,所以,创建了demo账户,允许demo账户在任何地方都能访问mysql数据库中shandong库,方法如下
方法一:
在安装mysql的机器上运行:
1: 创建user用户
1: 创建user用户
CREATE USER demo IDENTIFIED BY “123456”
2:授权
mysql>GRANT ALL PRIVILEGES ON shandong.* TO 'demo'@'%'WITH GRANT OPTION
//赋予任何主机访问数据的权限,也可以如下操作
<pre code_snippet_id="599368" snippet_file_name="blog_20150206_2_3271177" name="code" class="sql">mysql<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">>GRANT ALL PRIVILEGES ON shandong.* TO 'demo'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION; </span></span>
3.修改生效
mysql>FLUSH PRIVILEGES
//修改生效
[root@cicro108 mysql]# bin/mysql -u root -p -h 127.0.0.1 -A cws3
Enter password:
Welcome to the MySQL monitor. Commands end with or /g.
Your MySQL connection id is 1863 to server version: 4.1.20-standard
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql> grant ALL PRIVILEGES ON *.* to root@"%" identified by "mysql" ;
Query OK, 0 rows affected (0.17 sec)
发现这样更改权限以后,远程仍然不能连接,但是用下面的操作就可以了。
mysql> grant ALL PRIVILEGES ON *.* to root@"%" identified by "mysql" WITH GRANT OPTION;
Query OK, 0 rows affected (0.17 sec)
此刻, root 可以被远程连接,当然这里建立其他非 root 用户也可以远程连接。
方法二:
MySQL 1130错误解决方法:通过MySQL-Front或MySQL administrator连接MySQL的时候发生的这个错误
ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server
说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
需更改 MySQL 数据库里的 user表里的 host项
把localhost改称%
具体步骤:登陆到MySQL
首先 use MySQL;
按照别人提供的方式update的时候,出现错误。
MySQL> update user set host='%' where user = 'root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
然后查看了下数据库的host信息如下:
MySQL> select host from user where user = 'root';
+-----------------------+
| host |
+-----------------------+
| % |
| 127.0.0.1 |
| localhost.localdomain |
+-----------------------+
3 rows in set (0.00 sec)
host已经有了%这个值,所以直接运行命令:
MySQL>flush privileges;