Mysql Scalability(2)Sharding - Thoughts

kuwoyinlehe 2014-07-25

Mysql Scalability(2)Sharding - Thoughts

1. Amoeba
Build Codes and Installation
>svn checkout http://amoeba.googlecode.com/svn/trunk amoeba-svn

Install ant on MAC to build that.
>ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014

Just build it ,we will get the binary file amoeba-mysql-binary-2.2.0.tar.gz
>mkdir amoeba-mysql-binary-2.2.0
>cd amoeba-mysql-binary-2.2.0/
>tar zxvf amoeba-mysql-binary-2.2.0.tar.gz

Move to working directory
>mv amoeba-mysql-binary-2.2.0 /Users/carl/tool/amoeba-mysql-2.2.0
>sudo ln -s /Users/carl/tool/amoeba-mysql-2.2.0 /opt/amoeba-mysql-2.2.0
>sudo ln -s /opt/amoeba-mysql-2.2.0 /opt/amoeba-mysql

Add to Path /opt/amoeba-mysql

Verify the Installation is done.
>amoeba
amoeba start|stop

Configuration Basic
databases connections
conf/dbServers.xml

sharding rule
conf/rule.xml

access IP list
conf/access_list.conf

One DB node
Seems that I only can get the 2.2.0 version of the source codes, and the 2.2.0 binary is having class load problem on jdk1.6. And I do not plan to use 3.0.5 without source codes.

2. vitess
No enough document and source codes to understand that.

3. Atlas
https://github.com/Qihoo360/Atlas

Based on Mysql-Proxy, but do not support multiple DB rules, only support multiple tables.

4. Cobar
Nice code and nice document, but open source part does not support separate reads and writes.

Tips
Show the Slow Query
>sudo vi /etc/mysql/my.cnf
log_slow_queries    = /var/log/mysql/mysql-slow.log long_query_time = 5 #log-queries-not-using-indexes

But when I start this mysql server I got error as follow
>sudo mysqld --verbose
2014-07-24 15:59:25 3340 [ERROR] mysqld: unknown variable 'log_slow_queries=/var/log/mysql/mysql-slow.log' 2014-07-24 15:59:25 3340 [ERROR] Aborting

Solution:
This is the right configuration for mysql 5.6
slow-query-log-file = /var/log/mysql/mysql-slow.log long_query_time = 5 #log-queries-not-using-indexes

Change the user and group
>sudo chown mysql:mysql pathname

References:
http://sillycat.iteye.com/blog/2094908  Master-Slave

http://docs.hexnova.com/amoeba/index.html
https://code.google.com/p/amoeba/source/checkout
https://www.centos.bz/2012/05/amoeba-for-mysql/
http://www.aslibra.com/blog/post/amoeba_mysql_proxy_rw_split.php
http://www.cnblogs.com/taven/archive/2012/09/11/2680282.html
http://boke.25k5.com/kan16489.html

https://github.com/vispractice/Amoeba-Plus-For-MySQL

vitess
https://github.com/youtube/vitess
https://code.google.com/p/vitess/

show slow SQL
https://www.centos.bz/2012/01/active-mysql-slow-log-mysqldumpslow/

相关推荐