Inception mysql 运维自动化安装(centos)

 

环境:mysql 5.1

    centos 6.7

 

官方文档:http://mysql-inception.github.io/inception-document/chapter1/

 inception核心包:https://github.com/mysql-inception/inception

1、安装包

yum install -y cmake bison ncurses-devel gcc gcc-c++ openssl-devel

上传inception-master.zip包到服务器


2、解压编译 

unzip inception-master.zip
cd inception-master
mkdir /usr/local/inception
mkdir -p /data/inception
cmake .
cmake -DWITH_DEBUG=OFF-DCMAKE_INSTALL_PREFIX=/usr/local/inception -DMYSQL_DATADIR=/data/inception -DWITH_SSL=yes -DCMAKE_BUILD_TYPE=RELEASE-DWITH_ZLIB=bundled-DMY_MAINTAINER_CXX_WARNINGS="-Wall -Wextra -Wunused -Wwrite-strings -Wno-strict-aliasing  -Wno-unused-parameter-Woverloaded-virtual" -DMY_MAINTAINER_C_WARNINGS="-Wall -Wextra-Wunused -Wwrite-strings -Wno-strict-aliasing-Wdeclaration-after-statement"
make && make install

3、完成后添加配置文件

mkdir /data/socket
mkdir /data/temp
vim /etc/inc.cnf

cat /etc/inc.cnf

[inception]
 general_log=1     #这个参数就是原生的MySQL的参数,用来记录在Inception服务上执行过哪些语句,用来定位一些问题等
 general_log_file=/data/inception/inception.log               #设置general log写入的文件路径
 port=6669                     #Inception的服务端口
 socket=/data/socket/inc.socket                        #Inception的套接字文件存放位置
 character-set-client-handshake=0                       
 character-set-server=utf8                           #mysql原生参数
 #备份服务器信息
 inception_remote_system_password=root
 inception_remote_system_user=123456@
 inception_remote_backup_port=3306
 inception_remote_backup_host=127.0.0.1
 inception_support_charset=utf8mb4      #表示在建表或者建库时支持的字符集,如果需要多个,则用逗号分隔,影响的范围是建表、设置会话字符集、修改表字符集属性等
 inception_enable_nullable=0                    #创建或者新增列时如果列为NULL,不报错
 inception_check_primary_key=1                    #建表时,如果没有主键,则报错
 inception_check_column_comment=1                    #建表时,列没有注释时报错
 inception_check_table_comment=1                       #建表时,表没有注释时报错
 inception_osc_min_table_size=1  # 这个参数实际上是一个OSC的开关,如果设置为0,则全部ALTER语句都走OSC,如果设置为非0,则当这个表占用空间大小大于这个值时才使用OSC方式
 inception_osc_bin_dir=/data/temp                #用于指定pt-online-schema-change脚本的位置,不可修改,在配置文件中设置
 inception_osc_chunk_time=0.1                        #对应OSC参数--chunk-time
 inception_enable_blob_type=1                             #检查是不是支持BLOB字段,包括建表、修改列、新增列操作 默认开启
 inception_check_column_default_value=1              #检查在建表、修改列、新增列时,新的列属性是不是要有默认值


 

注:inc.cnf 配置上的参数意义可以参考

         http://mysql-inception.github.io/inception-document/variables/

         http://blog.itpub.net/27808137/viewspace-1816388/

 

4、启动inception

/usr/local/inception/bin/Inception--defaults-file=/etc/inc.cnf
/use/local/inception/bin/Inception--port=6669

inception_mysql运维自动化管理_第1张图片 

注:记得在防火墙开启6669 端口

 

5、测试inception

登录inception

mysql -uroot -h127.0.0.1 -P6669

inception_mysql运维自动化管理_第2张图片

登录上去之后执行,输错变量后成功

inception get variables;

inception_mysql运维自动化管理_第3张图片

 

安装 web封装的界面

     下载:https://github.com/dbalihui/inception_web

      上传inception_web-master.zip包到服务器

 

 解压

unzip inception_web-master.zip
cd inception_web-master/data

修改inception.py 账户密码

inception_mysql运维自动化管理_第4张图片


inception_web-master目录下运行

./run.py runserver --host 0.0.0.0

报错的话是因为没有安装flask组件

inception_mysql运维自动化管理_第5张图片

 

解决:

查看自身系统的Python 版本 python -V

先升级到Python 2.7 版本,下载 https://www.python.org/downloads/release/python-2711/

 并上传到服务器、解压

tar -zxvf Python-2.7.11.tgz 
cd Python-2.7.11/

编译安装

./configure
make && make install

查看版本信息

/usr/local/bin/python -V

wKiom1bmVp6yNxliAAARoUnGlag360.png

 建立软连接,使系统默认的 python指向python2.7

mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/bin/python /usr/bin/python

wKioL1bmVzXSG5ssAAAVg6Dh0ZE599.png

验证版本

python -V

wKiom1bmVrbwwmfrAAAR8nNF9EM189.png

 注:

vim /usr/bin/yum

   修改#!/usr/bin/python #!/usr/bin/python2.6.6,因为yum安装依赖的是2.6版本的python,否则yum 安装用不了inception_mysql运维自动化管理_第6张图片

下载一个ez_setup 安装pip2.7版本的                   

wget https://bootstrap.pypa.io/ez_setup.py  --no-check-certificate
python2.7 ez_setup.py
easy_install-2.7 pip
pip2.7 install MySQL-python

inception_mysql运维自动化管理_第7张图片

  * 出现报错的话 是缺少相关的 mysql-devel  

yum install -y mysql-devel

 pip 安装flask

pip2.7 install flask_wtf

inception_mysql运维自动化管理_第8张图片


pip2.7 install flask_script[object Object]


pip2.7 install flask-debugtoolbar[object Object]


进入inception web的目录下运行 run.py

./run.py runserver --host 0.0.0.0[object Object]

 注:记得在防火墙上面开启5000端口

 

在浏览器输入http://192.168.**:5000

inception_mysql运维自动化管理_第9张图片


*参考文档:http://blog.csdn.net/wulantian/article/details/48547711

       http://mysql-inception.github.io/inception-document/chapter1/