Mysql远程连接配置
2015-06-24 10:19
701 查看
第一步: 激活网络设置
需要编辑mysql配置文件my.cnf.通常状况,my.cnf放置于在以下目录:
/etc/mysql/my.cnf (ubuntu linux 其他的再看看)
然后用vi编辑my.cnf,修改内容从以下行:
[mysqld]
1. 确保skip-networking被删除或者屏蔽,否则不支持TCP/IP 访问
2. 增加行bind-address = ip,替代ip为你的服务器地址
修改后,配置为:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 65.55.55.2
# skip-networking
....
..
保存并关闭配置文件
重启mysql服务器:# /etc/init.d/mysql restart
第二步: 授权
方法一:例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO myuser@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH
GRANT OPTION;
FLUSH PRIVILEGES;
#################################
开启Mysql数据库的远程连接权限:
grant all privileges on *.* to 'root' @'%' identified by 'wrx123';
flush privileges; (这个步骤很重要)
方法二:
use mysql;
update user set host = '%'
where user = '用户名'; (如果写成 host=localhost 那此用户就不具有远程访问权限)
FLUSH PRIVILEGES; (这个步骤很重要)
第三步:防火墙
通过下面的命令增开3306端口iptables -A INPUT -p tcp -i eth0 --dport 3306-j ACCEPT
配置后,重新启动 iptable
service iptables restart
相关文章推荐
- Win7系统中MySQL服务无法启动的解决方法
- Mysql语句解析
- MySQL插入自增长列-使用自定义ID
- 使用mysql存储过程递归tree(如一个上级下面的所有下级的所有下级。。。。)
- mysql 删除语句几种常见的用法
- Mysql导入大容量SQL文件数据问题
- web.py在SAE中的Session问题解决方法(使用mysql存储)
- 30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
- mysql命令行操作
- MySQL入门书籍和方法分享
- Mysql 基于 Amoeba 的 读写分离
- MySql 手动执行主从备份
- Mysql高负载排查思路
- mysql语句记录
- mysql、JDBC、JDBC驱动连接数据库
- nodeJS链接mysql数据库(express框架)
- MySQL 数据类型
- MySQL优化之——自定义存储过程和函数
- web.py在SAE中的Session问题解决方法(使用mysql存储)
- MySQL的事件调度器使用介绍