编译安装dbproxyaltas
前言,目前已经有很多mysql中间层,baidu的 dbproxy,taobao的 tddl ,126 ,alibaba的 corba,360的altas ,mysql-proxy,楼方鑫的oneproxy,sohu的dbproxy,fabric等。有的支持分库分表,有的不支持。选择一款合适的就好。但是,如果做技术选型,还是要谨慎小心。
前言,目前已经有很多mysql中间层,baidu的 dbproxy,taobao的 tddl ,126 ,alibaba的 corba,360的altas ,mysql-proxy,楼方鑫的oneproxy,sohu的dbproxy,fabric等。有的支持分库分表,有的不支持。选择一款合适的就好。但是,如果做技术选型,还是要谨慎小心。选择自主研发还是用现有的第三方产品要慎重。(把libevent看懂了,就能做自主研发,但是要开发出一个稳定版本的,需要一段时间,开发出来后放到线上,会踩到很多坑,个人经验值,没有在线上跑2年时间的产品,不要用。曾今我们自己研发的,跑了差不多3年,直到12年,才稳定下来,之前bug不断)
#安装db【本文来自鸿网互联 (http://www.68idc.cn)】proxy altas 基本上按照朱超 写的这个,就能安装完 http://github.com/Qihoo360/Atlas/wiki/Atlas的安装
一.下载mkdir -p /data/software && cd /data/software
wget https://github.com/Qihoo360/Atlas/archive/2.2.1.tar.gz
mv 2.2.1.tar.gz atlas.2.2.1.tar.gz
tar zxvf atlas.2.2.1.tar.gz
二.安装库文件
#安装库文件,gcc等编译环境,需要提前配好,这里就掠过了。
yum install -y libevent-devel lua-devel openssl-devel flex mysql-devel
yum install -y xz gettext-devel
# libffi,glib(>2.32)
yum -y install libffi*
cd /data/software
wget http://ftp.acc.umu.se/pub/gnome/sources/glib/2.33/glib-2.33.6.tar.xz
xz -d glib-2.33.6.tar.xz
cd glib-2.33.6
./configure
make
make install
ldconfig
# jemalloc
cd /data/software
wget http://www.canonware.com/download/jemalloc/jemalloc-3.1.0.tar.bz2
tar xvf jemalloc-3.1.0.tar.bz2
make
make install
cp /data/software/jemalloc-3.1.0/lib/libjemalloc.so.1 /usr/local/lib/
ldconfig
三.编译安装Atlas
cd /data/software/Atlas-2.2.1
#修改安装目录 --prefix=/home/mysql/dbproxy
vim bootstrap.sh
#!/bin/sh
base=$(cd "$(dirname "$0")"; pwd)
cd $base
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --with-mysql=/usr --prefix=/home/mysql/dbproxy CFLAGS="-DHAVE_LUA_H -O2" LDFLAGS="-lm -ldl -lcrypto -ljemalloc" LUA_CFLAGS="-I/usr/local/include/" LUA_LIBS="-L/usr/local/lib -llua"
#用惯了,之前我们把dbproxy 安装在 /home/mysql/dbproxy,习惯了
./bootstrap.sh
make && make install
#编译过程中,如果有问题,看 config.log 记录的信息,一般是 jemalloc没安装、版本低,libffi*,glib-2.32,等库版本低或者没安装的问题。
四.配置
1.配置停起脚本mysql-proxyd
vim /home/mysql/dbproxy/bin/mysql-proxyd
修改 proxydir=/usr/local/mysql-proxy 为 proxydir=/home/mysql/dbproxy
#或者 sed -i 's%proxydir=/usr/local/mysql-proxy%proxydir=/home/mysql/dbproxy%g' /home/mysql/dbproxy/bin/mysql-proxyd
2.修改配置文件,后缀名必须是.cnf,如果不想用.cnf,也可以自己去改mysql-proxyd这个脚本
vim /home/mysql/dbproxy/conf/dbproxy.cnf
[mysql-proxy]
admin-username = user
admin-password = pwd
admin-address = 0.0.0.0:2345
proxy-backend-addresses = 192.168.0.220:9858
proxy-read-only-backend-addresses = 192.168.1.221:9858,192.168.0.14:9858
pwds = dbproxy_longxibendi_w: /iZxz+0GRoA=,dbproxy_longxibendi_r:/iZxz+0GRoA=
daemon = true
keepalive = true
event-threads = 4
log-level = message
log-path = /home/mysql/dbproxy/log
sql-log = ON
sql-log-slow = 10
wait-timeout = 10
proxy-address = 0.0.0.0:12340
charset = utf8
client-ips = 127.0.0.1, 192.168.1,192.168.0.220,192.168.1.221
3.mysql,slave上添加账号
master: 192.168.0.220
slave: 192,168.1.221,192.168.0.14
master上:mysql -uroot -p -h127.0.0.1 -P5858
mysql-> grant select,update,delete,insert on longxibendi.* to dbproxy_longxibendi_w@192.168.0.220 identified by '123456';
slave 上,相同授权,注意ip地址是dbproxy的地址
五.启动
1.启动dbproxy
cd /home/mysql/dbproxy/bin
./mysql-proxyd dbproxy start
2.访问测试
mysql -udbproxy_longxibendi_w -h192.168.0.220 -p123456 -P10240
mysql-> show databases;
#可以测试下事务,读写分离,主库宕机、从库宕机故障转移等。
#最后感谢 360 web平台 相关团队

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Solution to the problem that Win11 system cannot install Chinese language pack With the launch of Windows 11 system, many users began to upgrade their operating system to experience new functions and interfaces. However, some users found that they were unable to install the Chinese language pack after upgrading, which troubled their experience. In this article, we will discuss the reasons why Win11 system cannot install the Chinese language pack and provide some solutions to help users solve this problem. Cause Analysis First, let us analyze the inability of Win11 system to

You may not be able to install guest additions to a virtual machine in OracleVirtualBox. When we click on Devices>InstallGuestAdditionsCDImage, it just throws an error as shown below: VirtualBox - Error: Unable to insert virtual disc C: Programming FilesOracleVirtualBoxVBoxGuestAdditions.iso into ubuntu machine In this post we will understand what happens when you What to do when you can't install guest additions in VirtualBox. Unable to install guest additions in VirtualBox If you can't install it in Virtua

If you have successfully downloaded the installation file of Baidu Netdisk, but cannot install it normally, it may be that there is an error in the integrity of the software file or there is a problem with the residual files and registry entries. Let this site take care of it for users. Let’s introduce the analysis of the problem that Baidu Netdisk is successfully downloaded but cannot be installed. Analysis of the problem that Baidu Netdisk downloaded successfully but could not be installed 1. Check the integrity of the installation file: Make sure that the downloaded installation file is complete and not damaged. You can download it again, or try to download the installation file from another trusted source. 2. Turn off anti-virus software and firewall: Some anti-virus software or firewall programs may prevent the installation program from running properly. Try disabling or exiting the anti-virus software and firewall, then re-run the installation

Installing Android applications on Linux has always been a concern for many users. Especially for Linux users who like to use Android applications, it is very important to master how to install Android applications on Linux systems. Although running Android applications directly on Linux is not as simple as on the Android platform, by using emulators or third-party tools, we can still happily enjoy Android applications on Linux. The following will introduce how to install Android applications on Linux systems.

While studying in high school, some students take very clear and accurate notes, taking more notes than others in the same class. For some, note-taking is a hobby, while for others, it is a necessity when they easily forget small information about anything important. Microsoft's NTFS application is particularly useful for students who wish to save important notes beyond regular lectures. In this article, we will describe the installation of Ubuntu applications on Ubuntu24. Updating the Ubuntu System Before installing the Ubuntu installer, on Ubuntu24 we need to ensure that the newly configured system has been updated. We can use the most famous "a" in Ubuntu system

If you have used Docker, you must understand daemons, containers, and their functions. A daemon is a service that runs in the background when a container is already in use in any system. Podman is a free management tool for managing and creating containers without relying on any daemon such as Docker. Therefore, it has advantages in managing containers without the need for long-term backend services. Additionally, Podman does not require root-level permissions to be used. This guide discusses in detail how to install Podman on Ubuntu24. To update the system, we first need to update the system and open the Terminal shell of Ubuntu24. During both installation and upgrade processes, we need to use the command line. a simple

Detailed steps to install Go language on Win7 computer Go (also known as Golang) is an open source programming language developed by Google. It is simple, efficient and has excellent concurrency performance. It is suitable for the development of cloud services, network applications and back-end systems. . Installing the Go language on a Win7 computer allows you to quickly get started with the language and start writing Go programs. The following will introduce in detail the steps to install the Go language on a Win7 computer, and attach specific code examples. Step 1: Download the Go language installation package and visit the Go official website

Title: A complete guide to installing FTPS service under Linux system In Linux system, setting up an FTP server is a common requirement. However, in order to enhance the security of data transmission, we can choose to install the FTPS service, which adds SSL/TLS encryption function based on the FTP protocol. Through the FTPS service, we can upload and download files while ensuring the security of data transmission. This article will provide a detailed guide for installing FTPS service under Linux system and provide specific instructions.
