背景

  • 如果您需要从外网访问云数据库,可以在我们的云服务器上安装mysql proxy进行访问。

教程

安装mysql proxy以及使用很简单,在依次运行这些命令即可(前4步是在云服务器上操作)

  • 下载mysql-proxy安装包到云服务器
wget [http://cdn.mysql.com/Downloads/MySQL-Proxy/mysql-proxy-0.8.4-linux-glibc2.3-x86-64bit.tar.gz][1]
  • 解压上述安装包
tar -xzf mysql-proxy-0.8.4-linux-glibc2.3-x86-64bit.tar.gz
  • 查看解压出来的目录
ls mysql-proxy-0.8.4-linux-glibc2.3-x86-64bit
  • 目录下包含有bin、lib、libexec等目录:
    bin、libexec目录包含mysql proxy等程序,lib目录带有程序依赖的库,如glibc、pcre等。
    请保持bin、lib、libexec目录的相对路径关系,避免找不到依赖的库。

  • 进入mysql proxy所在目录并运行

cd mysql-proxy-0.8.4-linux-glibc2.3-x86-64bit/bin
./mysql-proxy --proxy-backend-addresses=10.**.**.17:3306 --proxy-address=:4040
  • 参数介绍:
--proxy-backend-addresses=10.**.**.17:3306, 云数据库的ip和端口
您需要把其中的10.**.**.17:3306换成您的云数据库的ip和端口。
--proxy-address=:4040,代理的监听地址和端口。
默认是":4040",表示本机所有4040端口的所有ip。 
  • 还可以在命令后面添加一些参数:
--daemon,让代理处于后台运行
--keepalive,代理崩溃后尝试重启代理
  • 运行命令后,会显示如下信息,提示代理搭建成功:
2014-09-01 11:56:38: (critical) plugin proxy 0.8.4 started
  • 如果没有成功启动,欢迎咨询我们。
    该代理的监听端口是4040,我们接下来测试代理能否成功转发。

  • 从外网访问云服务器上的mysql proxy。
    在一台外网机子运行【假设外网ip为182...2】

mysql -h 182.*.*.2 -P 4040 -u root -p
  • 按提示输入您的云数据库密码后,看是否成功登录云数据库。
    如果登录失败,请检查:
    1.第4步中云数据库的ip和端口是否正确。
    2.外网机子是否能ping通云服务器的外网ip
    3.云服务器是否成功启动mysql proxy。

其他