`
like.eagle
  • 浏览: 253096 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

MySQL Proxy Version 0.8.0安装手顺

阅读更多
MySQL Proxy Version 0.8.0安装手顺


①ファイルを解凍する
tar -zxvf mysql-proxy-0.8.0-linux-glibc2.3-x86-32bit.tar.gz

②フォルダー(/usr/local/)にファイルを動くする
mv mysql-proxy-0.8.0-linux-glibc2.3-x86-32bit /usr/local/mysql_proxy_0.8.0/

③スタートのスクリプトを作成する
vi /etc/mysql-proxy.cnf
スクリプトの内容↓
[mysql-proxy]
daemon = true
keepalive = true
proxy-backend-addresses = 192.168.1.104:3306
proxy-read-only-backend-addresses = 192.168.1.110:3306
proxy-read-only-backend-addresses = 192.168.1.111:3306
proxy-lua-script = /usr/local/mysql_proxy_0.8.0/share/doc/mysql-proxy/rw-splitting.lua
log-file = /usr/local/mysql_proxy_0.8.0/mysql-proxy-0.8.0.log
log-level = debug

#如果是0.8.1版的mysql-proxy中,还需要加入下面的配置项才能启动成功:
admin-username=name
admin-password=pwd
admin-lua-script=/usr/local/mysql_proxy_0.8.1/lib/mysql-proxy/lua/admin.lua

(上述的name和pwd可随意配置,此处的配置是为了创建一个用于管理mysql的管理员账号)
否则log-file中会出现错误信息:
2010-12-15 14:21:10: (critical) admin-plugin.c:569: --admin-username needs to be set
2010-12-15 14:21:10: (critical) mainloop.c:267: applying config of plugin admin failed
2010-12-15 14:21:10: (critical) mysql-proxy-cli.c:596: Failure from chassis_mainloop. Shutting down.


#########关于MySQL Proxy Log配置的说明################
http://dev.mysql.com/doc/refman/5.6/en/mysql-proxy-configuration.html#option_mysql-proxy_log-file
相关参数有三个:
--log-level=(error|warning|info|message|debug) log all messages of level ... or higer
--log-file=<file> log all messages in a file
--log-use-syslog log all messages to syslog. (true|false)
小提示:
一般情况下log-file和log-use-syslog最好不要同时设置:
log-file被指定时,是将LOG写入指定的文件;而log-use-syslog设置为true时,是将LOG写入系统LOG;
#######################################################

④TCP訪問権限の設定:iptablesの設定
$ /sbin/iptables -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 4040 -j ACCEPT
$ /etc/init.d/iptables save active
$ /sbin/service iptables restart

⑤実行権限をあげる
chmod 0660 /etc/mysql-proxy.cnf

⑥スクリプトを起動する

启动方式1(不推荐)
/usr/local/mysql_proxy_0.8.0/bin/mysql-proxy --defaults-file=/etc/mysql-proxy.cnf


#更改/usr/local/mysql_proxy_0.8.0/share/doc/mysql-proxy/rw-splitting.lua中is_debug的值为true后,
#如果利用如下的启动命令,可以将控制台信息输出到文件cn.log中。
#可以通过该LOG看出MySQL Proxy的负载平衡状况。
/usr/local/mysql_proxy_0.8.0/bin/mysql-proxy --defaults-file=/etc/mysql-proxy.cnf > /usr/local/mysql_proxy_0.8.0/cn.log


启动方式2(推荐)
  (1)起動スクリプトを修正する
   vi /etc/init.d/mysql-proxy
      ファイルの内容
      请参照:http://forge.mysql.com/wiki/MySQL_Proxy_init 

  (2)起動
    /etc/init.d/mysql-proxy start


⑦起動後の確認をする
(1)error info can be ignored
(critical) chassis-limits.c:81: could not raise RLIMIT_NOFILE to 8192, Invalid argument (22). Current limit still 1024.

(2)プロセスの確認
ps aux|grep mysql-proxy



遇到问题及解决办法:

问题:
在启动配置文件(/etc/mysql-proxy.cnf)中配置了一主(rdb1)二从(rdb3,rdb4)三台数据库服务器↓,但是执行查询语句的测试时所有的查询都集中在第二台从服务器(rdb4)中。
proxy-backend-addresses = 192.168.1.104:3306                            #rdb1......server1
proxy-read-only-backend-addresses = 192.168.1.110:3306              #rdb3......server2
proxy-read-only-backend-addresses = 192.168.1.111:3306              #rdb4......server3

更改成如下配置后,执行查询语句的测试时所有的查询也集中在第二台从服务器(rdb3)中。
proxy-backend-addresses = 192.168.1.104:3306                           #rdb1......server1
proxy-read-only-backend-addresses = 192.168.1.111:3306              #rdb4......server2
proxy-read-only-backend-addresses = 192.168.1.110:3306              #rdb3......server3

根据上面的状况以及Log分析,可以得知MySQL Proxy 0.8.0启动时,只启动了server1和server3。
server2似乎被无视掉了,具体原因还在调查中。。。。。。

解决办法:
方案①
更改配置文件的写法:
vi /etc/mysql-proxy.cnf
[mysql-proxy]
daemon = true
keepalive = true
proxy-backend-addresses = 192.168.1.104:3306
proxy-read-only-backend-addresses = 192.168.1.111:3306,192.168.1.110:3306  #注意:逗号后不可有空格。
proxy-lua-script = /usr/local/mysql_proxy_0.8.0/share/doc/mysql-proxy/rw-splitting.lua
log-file = /usr/local/mysql_proxy_0.8.0/mysql-proxy-0.8.0.log
log-level = debug

方案②
主从服务器配置放在启动命令中,其他的配置仍放在配置文件中。
shell> /usr/local/mysql_proxy_0.8.0/bin/mysql-proxy   --proxy-backend-addresses 192.168.1.104:3306 --proxy-read-only-backend-addresses 192.168.1.111:3306 --proxy-read-only-backend-addresses 192.168.1.110:3306 --defaults-file=/etc/mysql-proxy.cnf > /usr/local/mysql_proxy_0.8.0/cn.log

分享到:
评论

相关推荐

    mysql-proxy-0.8.0.tar.gz

    mysql-proxy 安装需要依赖已有的mariadb或mysql 中的mysql_config yum install mariadb yum install mariadb-devel 解压资源进入后 ./configure make && make install

    安装mysql-proxy所需工具

    在安装MySQL Proxy之前,我们需要确保系统上安装了必要的工具和依赖,以确保顺利进行。下面将详细介绍安装MySQL Proxy所需的工具及其重要性。 1. **操作系统兼容性**: MySQL Proxy支持多种操作系统,包括Linux、...

    mysql-proxy 安装配置

    以下是对MySQL Proxy安装配置及其相关知识点的详细说明: 1. **安装过程**: - 首先,从MySQL官方下载页面获取适合您操作系统的MySQL Proxy版本。例如,在提供的文件中,使用的是`mysql-proxy-0.6.0-linux-rhas4-...

    mysql-proxy-0.8.5-windows-x86-32bit

    安装和使用 MySQL Proxy 需要注意以下几点: 1. **配置文件**:默认情况下,MySQL Proxy 使用 `proxy.conf` 文件进行配置,包括代理端口、后端服务器地址等信息。 2. **Lua 脚本**:可以通过 Lua 脚本自定义代理...

    MySQL Proxy 说明与配置

    首先,你需要从MySQL官网下载对应操作系统的MySQL Proxy二进制包,然后解压并进行安装。安装过程通常包括设置环境变量、创建数据目录以及启动服务。 配置MySQL Proxy主要涉及到两个文件:`proxy.lua`和`log.lua`。`...

    windows++mysql-proxy全部数据包

    本资料包“windows++mysql-proxy全部数据包”显然是针对Windows平台的MySQL Proxy安装和配置资源,包含了启动脚本、必要的运行库以及MySQL Proxy的可执行文件。 首先,让我们详细了解MySQL Proxy。MySQL Proxy是一...

    mysql配置mysql-proxy读写分离1

    安装完 Lua 后,我们开始安装 MySQL Proxy。在下载合适的版本(基于你的系统架构,可能是 32 位或 64 位)后,解压并复制到指定目录。例如,对于 32 位系统,你可以从 ...

    MySQL-Proxy

    cp -r mysql-proxy-0.8.0-linux-rhel5-x86-32bit /usr/local/mysql-proxy cd /usr/local/mysql-proxy/share/doc/mysql-proxy ``` - 修改配置文件 `rw-splitting.lua`,例如: ```lua if not proxy.global....

    mysql proxy

    MySQL Proxy 的安装通常包括编译源码或者直接使用预编译的二进制包。在安装过程中,需要确保系统已经安装了Lua和glib库。配置时,可以使用`--proxy-backend-addresses`参数指定后端数据库服务器地址,`--proxy-read-...

    mysql-proxy

    MySQL Proxy是一款轻量级的开源工具,主要用于MySQL数据库的读写分离、IO优化以及实现一定的负载均衡。在大型系统中,数据库通常是性能瓶颈的关键因素,MySQL Proxy的出现就是为了缓解这一问题,提高系统的整体效率...

    mysql-proxy安装部署.docx

    4. **安装 MySQL Proxy**:从源码编译 MySQL Proxy,创建自定义的安装目录,并使用 `./configure` 和 `make` 命令来编译和安装。 完成以上步骤后,MySQL Proxy 应该已经成功安装。接下来,可以通过编写 Lua 脚本来...

    mysql proxy问题的解决方法

    MySQL Proxy 是一个轻量级的中间件,用于在 MySQL 客户端和服务器之间提供额外的功能,如负载均衡、故障切换、数据过滤等。然而,使用 MySQL Proxy 时可能会遇到一些问题,本篇文章将详细讨论这些问题及其解决方案。...

    MySQL Proxy 快速实现读写分离以及负载均衡

    通过以上步骤,我们不仅成功安装了 MySQL Proxy 并配置了读写分离与负载均衡,还对 MySQL Proxy 的基本使用进行了简单的介绍。MySQL Proxy 作为一款强大的中间件工具,极大地简化了数据库集群的管理和维护工作。对于...

    Mysql Proxy 实现mysql读写分离.pdf

    4. 安装 mysql-proxy:将下载的 mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz 解压到 /opt/mysql-proxy 目录下,设置环境变量:export PATH=$PATH:/opt/mysql-proxy/mysql-proxy-0.8.5/bin 读写分离配置: 1. ...

    MYSQL学习资料

    MySQL Proxy应用入门 1 安装MySQL Proxy MySQL Proxy应用入门 2 MySQL Proxy配置选项 MySQL Proxy应用入门 3 使用MySQL Proxy MySQL UDF Mysql Proxy安装配置测 MySQL5 5 Semi synchronous Replication(半同步复制...

    python 开发的mysql proxy : angel proxy

    标题中的“Python开发的MySQL Proxy:Angel Proxy”指的是一个用Python编程语言编写的数据库中间件,它的主要功能是实现MySQL数据库的读写分离。在大型系统中,为了提高数据库的性能和可扩展性,通常会采用读写分离...

    使用mysql-proxy实现mysql读写分离

    - **安装MySQL客户端**:安装MySQL客户端是为了让mysql-proxy能够顺利连接MySQL服务器。 3. **安装mysql-proxy**:按照文档中的步骤完成mysql-proxy的安装。 4. **配置mysql-proxy**:通过命令行指定mysql-proxy...

    mysql proxy 教程

    - 在大多数 Linux 发行版中,可以通过包管理器(如 yum 或 apt)安装 MySQL Proxy。 - 也可以从 MySQL 官方网站下载源代码进行编译安装。 - **配置文件**:MySQL Proxy 的主要配置文件通常位于 `/etc/mysql-proxy....

Global site tag (gtag.js) - Google Analytics