4.MySQL读写分离中间件-kingshard搭建

不想你离开。 提交于 2019-12-30 17:53:05

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

  • 1.kingshard简介
  • 2. 安装Go语言环境
    • 2.1 下载源码包
    • 2.2. 解压到指定目录下
    • 2.3. 更新环境变量
    • 2.4. 查看go的版本信息
  • 3.安装kingshard
    • 3.1 下载tar包
    • 3.2 解压文件
    • 3.3运行kingshard

 

1.kingshard简介

kingshard是一个由Go开发高性能MySQL Proxy项目,kingshard在满足基本的读写分离的功能上,致力于简化MySQL分库分表操作;能够让DBA通过kingshard轻松平滑地实现MySQL数据库扩容。 kingshard的性能是直连MySQL性能的80%以上。线上使用kingshard,请从release页面获取最新版!!

参考地址:https://gitee.com/flikecn/kingshard

按照介绍文档中的安装步骤进行的不大顺利,请按下面步骤进行安装:

2. 安装Go语言环境

2.1 下载源码包

> wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz

2.2. 解压到指定目录下

> tar -C /usr/local -xzvf go1.12.9.linux-amd64.tar.gz

<说明>解压成功后,会在/usr/local目录下生成go目录,亦即go的安装路径是/usr/local/go

2.3. 更新环境变量

在/etc/profile文件末尾添加 export PATH=$PATH:/usr/local/go/bin,记得:wq

> vim /etc/profile

> source /etc/profile

2.4. 查看go的版本信息

> go version
go version go1.12.9 linux/amd64
# go命令的使用帮助
> go help
# 查看go的环境变量信息
> go env

3.安装kingshard

线上使用kingshard,请从release页面获取最新版!!

3.1 下载tar包

> wget https://github.com/flike/kingshard/archive/1.6.tar.gz

3.2 解压文件

在/usr/local/go/src新建目录: github.com/flike/kingshard,然后解压kingshard-1.6.tar.gz,解压在kingshard会是kingshard-1.6,进入此文件将所有内容移动到上层目录,然后删除kingshard-1.6文件夹
> mkdir -p /usr/local/go/src/github.com/flike/kingshard
> tar -C /usr/local/go/src/github.com/flike/kingshard -xzvf kingshard-1.6.tar.gz
> cd /usr/local/go/src/github.com/flike/kingshard/kingshard-1.6
> mv * ../
> rm -rf /usr/local/go/src/github.com/flike/kingshard/kingshard-1.6
> pwd
> ll

3.3运行kingshard

> cd /usr/local/go/src/github.com/flike/kingshard
> source ./dev.sh
> make
> vim etc/ks.yaml

ks.yaml文件说明参考地址:https://gitee.com/flikecn/kingshard/blob/master/doc/KingDoc/kingshard_install_document.md

> ./bin/kingshard -config=etc/ks.yaml

因为kingshard目录太长,可以建立软连接方便进入

>cd /data

>ln -s /usr/local/go/src/github.com/flike/kingshard/ /data/kingshard

注意
1. kingshard会响应SIGINT,SIGTERM,SIGQUIT这三个信号,平滑退出。在部署kingshard机器上应避免产生这三个信号,以免造成kingshard非正常退出!后台运行kingshard建议使用supervisor工具
2. kingshard采用的是yaml方式解析配置文件,需要注意的是yaml配置文件不允许出现tab键,且冒号后面需要跟一个空格。配置文件编写完成后,可以在yaml lint网站验证是否有格式错误
后台运行kingshard:
> ./bin/kingshard -config=etc/ks.yaml &
此时按ctrl+c不会退出程序,但是断掉ssh连接,kingshard也会退出

supervisor工具安装请参考:Linux安装supervisor工具-管理kingshard

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!