关闭

配置远程连接mysql数据库 Connect to remote mysql database

1002人阅读 评论(0) 收藏 举报
分类:
设有本地机器(local machine), ip地址为localip
远程机器(remote machine), ip地址remoteip
要通过在local machine的终端连接remote machine的mysql数据库,并且对数据库进行操作。

1.在local和remote均安装好mysql,安装方法参考另一篇博客。
2.在本地ssh连接到远程host
$ ssh remoteuser@remoteip
3.打开远程host的mysql,为local添加用户。
$ mysql -uroot -p
mysql>GRANT ALL ON *.* TO mysqluser@'localip' IDENTIFIED BY 'my_password';
//上述的GRANT 语句意思是在localip上创建一个mysql用户mysqluser,并且赋予该用户对本mysql的所有数据库的所有权限。
4.查看步骤3的结果
mysql>select Host, User, Password from mysql.user;
5.完成上述四个步骤后,在本地连接远程的mysql一般会失败,此时的原因有多种,可以参考以下链接中的方法。
<a target=_blank href="http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html">http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html</a>
自己的情况是进行了链接中的Step # 7: Open port 3306.
在步骤4以后输入quit退出mysql,但此时终端的host仍然是远程host。执行,
$ sudo /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
$ sudo service iptables save
6.输入一下命令退出远程host,测试能否连接到远程的mysql
$ exit
$ nc -z -w1 remoteip 3306
如果显示:Connection to <remoteip> port 3306 [tcp/mysql] succeeded!
则成功。便可以用mysql命令连接远程mysql。
$ mysql -u mysqluser -h remoteip -p

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:59111次
    • 积分:1317
    • 等级:
    • 排名:千里之外
    • 原创:77篇
    • 转载:7篇
    • 译文:0篇
    • 评论:18条
    最新评论