关于Mysql Proxy LUA实现Mysql读写分离

关于Mysql Proxy LUA读写分离是本文要介绍的内容,主要是来了解Mysql Proxy LUA的学习内容,具体内容来看本文详解,先来下载匹配的版本:

  1. http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/

下载最新版的二进制版本以mysql-proxy-0.8.0-linux-glibc2.3-x86-32bit为例。www.lua.org 下载lua。

1.通过mysql代理mysql-proxy来实现mysql的读写分离

MySQL Proxy 安装地址:192.168.0.234(写,也可将mysql-proxy安装在第三台服务器上)

MySQL 服务器地址:192.168.0.235(读)

2.安装mysql-proxy

  1. apt-get install mysql-proxy

这样安装好之后在/usr/lib/mysql-proxy/lua/proxy/里面是没有rw-splitting.lua文件的,将下载导的lua二进制版本里面share/doc/mysql-proxy/下面的rw-splitting.lua这个文件拷贝到/usr/lib/mysql-proxy/lua/proxy/

3.启动mysql-proxy

若不存在则创建mysql-proxy日志目录  mkdir /var/log/mysql-proxy/

启动mysql-proxy命令:

  1. mysql-proxy --proxy-read-only-backend-addresses=192.168.0.235:3306
  2. --proxy-backend-addresses=192.168.0.234:3306
  3. --proxy-lua-script=/usr/lib/mysql-proxy/lua/proxy/rw-splitting.lua > /var/log/mysql-proxy/mysql-proxy.log &

启动状态:

  1. [email protected]:~# mysql-proxy --proxy-read-only-backend-addresses=192.168.0.235:3306
  2. --proxy-backend-addresses=192.168.0.234:3306
  3. --proxy-lua-script=/usr/lib/mysql-proxy/lua/proxy/rw-splitting.lua > /var/log/mysql-proxy/mysql-proxy.log &
  4. [1] 1584
  5. [email protected]:~# 2010- 03-11 01:53:36: (warning) g_set_prgname() called multiple times
  6. 2010-03-11 01:53:36: (critical) chassis.c:980: could not raise RLIMIT_NOFILE to 8192,
  7. Invalid argument (22). Current limit still 13214421558589654016.

然后查看端口,mysql-proxy默认端口是4040和4041

  1. lsof -i:4040
  2. [email protected]:~# lsof -i:4040
  3. COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
  4. mysql-pro 1584 root    7u  IPv4   6018      0t0  TCP *:4040 (LISTEN)

这样就表示mysql-proxy已经启动成功。

乱码处理在配置文件my.conf里server-id下面加入

  1. skip-character-set-client-handshake
  2. init-connect=‘SET NAMES utf8‘
  3. default-character-set=utf8

关于Mysql Proxy LUA实现Mysql读写分离,布布扣,bubuko.com

时间: 2024-08-11 03:31:46

关于Mysql Proxy LUA实现Mysql读写分离的相关文章

使用mysql proxy对数据库进行读写分离

服务器安排如下: 192.168.100.128 主 192.168.100.129 从 192.168.100.130 mysql-proxy 1.在100.130中下载安装mysql-proxy tar -zxvf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz cp mysql-proxy-0.8.5-linux-el6-x86-64bit /usr/local/mysql-proxy 2.配置环境变量 LUA_PATH="/usr/local/m

MySQL Proxy实现数据的读写分离

做MySQL读写分离实验之前,先要搭建MySQL主从复制,可以参考我之前的两篇文章: MySQL主从配置:http://msiyuetian.blog.51cto.com/8637744/1697288 部署搭建分层次LAMP架构(最后一章节):http://msiyuetian.blog.51cto.com/8637744/1740236 实现了主从复制后,下面我们进行读写分离的安装与配置.环境说明: Linux发行版本:centos 6.7 x86_64 (三台) Hostname IP 备

MySQL主从(MySQL proxy Lua读写分离设置,一主多从同步配置,分库分表方案)

Mysql Proxy Lua读写分离设置 一.读写分离说明 读写分离(Read/Write Splitting),基本的原理是让主数据库处理事务性增.改.删操作(INSERT.UPDATE.DELETE),而从数据库处理SELECT查询操作.数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库. 1.设置说明 Master服务器: 192.168.41.196 Slave服务器: 192.168.41.197 Proxy服务器: 192.168.41.203 2.安装Mysql Pro

MySQL和MariaDB 备份 主从 读写分离

查询缓存: 如何判断是否命中: 通过查询语句的哈希值判断:哈希值考虑的因素包括 查询本身.要查询的数据库.客户端使用协议版本,... 查询语句任何字符上的不同,都会导致缓存不能命中: 哪此查询可能不会被缓存? 查询中包含UDF.存储函数.用户自定义变量.临时表.mysql库中系统表.或者包含列级权限的表.有着不确定值的函数(Now()); 查询缓存相关的服务器变量: query_cache_min_res_unit: 查询缓存中内存块的最小分配单位: 较小值会减少浪费,但会导致更频繁的内存分配操

Mysql主从配置,实现读写分离

大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果更是 不堪设想.这时候,我们会考虑如何减少数据库的联接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached,如果资金丰厚的话,必然会想到假设服务器群,来分担主数据库的压力.Ok切入今天微博主题,利用MySQL主从配置,实现读写分离,减轻数据库压力.这种

MySQL/MariaDB基于MMM实现读写分离及高可用

前言 MMM(Master-Master replication managerfor Mysql,Mysql主主复制管理器)是一套灵活的脚本程序,基于perl实现,用来对mysql replication进行监控和故障迁移,并能管理mysql Master-Master复制的配置(同一时间只有一个节点是可写的). MMM 优缺点 优点:高可用性,扩展性好,出现故障自动切换,对于主主同步,在同一时间只提供一台数据库写操作,保证的数据的一致性. 缺点:Monitor节点是单点,可以结合Keepal

高可用架构篇--MyCat在MySQL主从复制基础上实现读写分离

点击链接加入群[Dubbo技术交流2群]:https://jq.qq.com/?_wv=1027&k=46DcDFI 一.环境 操作系统:CentOS-6.6-x86_64-bin-DVD1.iso JDK版本:jdk1.7.0_45 MyCat版本:Mycat-server-1.4-release-20151019230038-linux.tar.gz MyCat节点IP:192.168.1.203      主机名:edu-mycat-01  主机配置:4核CPU.4G内存 MySQL版本:

mysql数据库多种备份及读写分离搭建

数据库的版本 1.社区版 2.企业版 3.集群版 数据库的安装 1.     专用软件包管理器(二进制) deb .rpm等 mysql                 MySQL客户端程序和共享库 mysql-server            MySQL服务器需要的相关程序 2.     源代码软件包(编译安装) configure.cmake 数据库常用的配置选项 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql    ----指定残可安装路径(默认的就是/u

mysql集群:主从服务器读写分离

mysql集群架构方式很多,根据不同的需求做不一样的架构,简单一点的就是mysql的replication,也就是Mysql的复制功能,模式有:master-slaves,master-slaves-slaves,master-master-slaves等可以有多个分层,那么现在我所要说的是master-slaves的模式(其他的模式原理基本都一样),然后再通过mysql官方提供的Mysql-proxy实现读写分离,达到的效果. 环境: 主机::192.168.1.109,slave1:192.