帮助中心
  • 云主机
  • 数据盘
  • 弹性IP
  • 快照
  • 云防火墙

鉴于MySQL实例不能通过外网IP直接访问,可使用MySQL-Proxy将MySQL实例跳转至云主机的端口进行访问。

在云主机上安装MySQL-Proxy(这里以CentOS7为例):

yum install mysql-proxy

安装结束后,可通过如下命令查看相关信息:

mysql-proxy -V

mysql-proxy 0.8.5
chassis: 0.8.5
glib2: 2.36.3
libevent: 2.0.21-stable
LUA: Lua 5.1.4
package.path: /usr/lib64/mysql-proxy/lua/?.lua
package.cpath: /usr/lib64/mysql-proxy/lua/?.so
-- modules
proxy: 0.8.5

查看MySQL-Proxy帮助选项:

 

[root@ ~]# mysql-proxy -help -all
Usage:
mysql-proxy [OPTION...] - MySQL Proxy

 

Help Options:
-h, --help Show help options
--help-all Show all help options
--help-proxy Show options for the proxy-module

 

Application Options:
-V, --version Show version
--defaults-file=<file> configuration file
--verbose-shutdown Always log the exit code when shutting down
--daemon Start in daemon-mode
--user=<user> Run mysql-proxy as user
--basedir=<absolute path> Base directory to prepend to relative paths in the config
--pid-file=<file> PID file in case we are started as daemon
--plugin-dir=<path> path to the plugins
--plugins=<name> plugins to load
--log-level=(error|warning|info|message|debug) log all messages of level ... or higher
--log-file=<file> log all messages in a file
--log-use-syslog log all messages to syslog
--log-backtrace-on-crash try to invoke debugger on crash
--keepalive try to restart the proxy if it crashed
--max-open-files maximum number of open files (ulimit -n)
--event-threads number of event-handling threads (default: 1)
--lua-path=<...> set the LUA_PATH
--lua-cpath=<...> set the LUA_CPATH

MySQL-Proxy默认端口为4040,通过访问4040端口就可以访问3306端口。

使用命令行开启MySQL-Proxy,步骤如下:

touch /etc/mysql-proxy.cnf vim /etc/mysql-proxy.cnf

编辑以下内容:

[mysql-proxy]

admin-username=root     #admin账号用户名
admin-password=XXXXX  #admin账号密码
admin-lua-script=/usr/lib64/mysql-proxy/lua/admin.lua  #lua脚本位置,对应mysql-proxy的版本信息
daemon=true         #定义mysql-proxy 以守护进程方式运行
keepalive=true       #保持连接启动进程有2个,一号进程用来监视二号进程
proxy-backend-addresses=10.100.X.X  #目标云数据库IP地址,为比格云内网地址,默认端口3306
log-file=/var/log/mysql-proxy.log           #定义log-file 保存位置
log-level=debug                                      #定义log级别

配置文件保存后更改相应权限:

chmod 0660 /etc/mysql-proxy.cnf

启动:

[root@ ~]# mysql-proxy --defaults-file=/etc/mysql-proxy.cnf

[root@10-100-13-165 ~]# ps -ef |grep mysql-proxy |grep -v grep 

root 57102 1 0 11:55 ? 00:00:00 mysql-proxy --defaults-file=/etc/mysql-proxy.cnf
root 57103 57102 0 11:55 ? 00:00:00 mysql-proxy --defaults-file=/etc/mysql-proxy.cnf

查看监听湍口:

[root@ ~]# netstat -antp |grep mysql-proxy
tcp 0 0 0.0.0.0:4040 0.0.0.0:* LISTEN 57103/mysql-proxy

使用kill命令可以将程序终止。

外网环境访问测试:

首先需要在比格云安全组中,打开对应安装mysql-proxy服务云主机的TCP 4040端口,这样外部才可以进行连接,连接方式如下:

#mysql -u$host_ip -P4040 -u$user -p$Password

其中host_ip 为云主机对应的外网EIP。


上一篇 下一篇

技术交流企业群

点击发起工单