Inception部署

Inception是集审核、执行、回滚于一体的一个SQL自动化运维系统,基于MySQL代码修改,官方文档地址:https://mysql-inception.github.io/inception-document/

一、Inception部署篇

官方部署说明:https://mysql-inception.github.io/inception-document/install/

我的环境:centos7.4

我的安装步骤:

1. 安装依赖

yum -y install gcc gcc-c++ make cmake openssl-devel ncurses-devel perl unzip m4 MySQL-python perl-ExtUtils-Embed

(Ubuntu下执行apt-get install cmake libncurses5-dev libssl-dev g++ m4,没有perl的话也要安装)

2. 安装bison,官方建议2.6版本之前

wget -c https://static.saintic.com/download/inception/bison-2.5.1.tar && tar xf bison-2.5.1.tar && cd bison-2.5.1 && ./configure && make && make install

3. 安装percona-toolkit,在线修改大表用的工具

wget -c https://static.saintic.com/download/inception/percona-toolkit-2.2.20.tar.gz && tar zxf percona-toolkit-2.2.20.tar.gz && cd percona-toolkit-2.2.20 && perl Makefile.PL && make install

4. 安装主程序inception

git clone https://github.com/mysql-inception/inception && cd inception

编译inception可以用官方的方法,sh inception_build.sh,也可以cmake编译,我这里用cmake演示(因为后面docker编译用cmake没有问题)。

cmake -DWITH_DEBUG=OFF -DCMAKE_INSTALL_PREFIX=/Inception-DMYSQL_DATADIR=/Inception/data-DWITH_SSL=bundled -DCMAKE_BUILD_TYPE=RELEASE -DWITH_ZLIB=bundled -DMY_MAINTAINER_CXX_WARNINGS="-Wall -Wextra -Wunused -Wno-dev -Wwrite-strings -Wno-strict-aliasing -Wno-unused-parameter -Woverloaded-virtual" -DMY_MAINTAINER_C_WARNINGS="-Wall -Wextra -Wno-dev -Wunused -Wwrite-strings -Wno-strict-aliasing -Wdeclaration-after-statement" && make && make install

注意红色部分,编译好的程序目录即可,可执行命令在这目录的bin下。

5. 启动

/Inception/bin/Inception --defaults-file=/etc/inception.cnf #此配置文件参见底部附录

二、Docker镜像

上述过程已经被我打包成镜像,基于centos7.4,可以直接使用,镜像支持OSC,默认配置文件为官方推荐配置(参见底部附录),可以自定义挂载覆盖/etc/inception.cnf,默认了以下参数可以设置环境变量:

1. 拉取镜像

2. 运行镜像(可以跳过第一步,此处假定远程备份地址127.0.0.1,端口3306,账号root,密码123456)

查看日志:

The inception listens for 0.0.0.0:6669

2018-07-19 03:40:15 0 [Note] Welcome to use Inception2.1.50

2018-07-19 03:40:15 6 [Note] Server hostname (bind-address): '0.0.0.0'; port: 6669

2018-07-19 03:40:15 6 [Note] - '0.0.0.0' resolves to '0.0.0.0';

2018-07-19 03:40:15 6 [Note] Server socket created on IP: '0.0.0.0'.

三、访问

使用mysql命令即可,需要指定inception的ip地址和端口,如

登录成功界面如下图,此时执行 命令可以获取系统参数。

四、附录

1. 配置文件/etc/inception.cnf

此配置文件基本是官方参数默认值,docker运行时可以使用 覆盖它。

官方参数文档地址:https://mysql-inception.github.io/inception-document/variables/

配置文件内容如下($变量请在在docker运行时覆盖):

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180721G1HH9C00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券