设为首页 收藏本站
查看: 785|回复: 0

[经验分享] Inception 安装步骤(CentOS系统)

[复制链接]

尚未签到

发表于 2018-4-23 11:11:08 | 显示全部楼层 |阅读模式
  写在前边:
  Inception是由去哪儿网的DBA大神开发的一款自动审核SQL的开源工具。在对文档进行拜读之后进行安装的时候发现文档中的安装步骤并不是很详细。中间遇到很多问题。所以自己整理了一下详细的安装步骤。希望大家指教
  官方文档地址:http://mysql-inception.github.io/inception-document/chapter1/
  安装步骤:
  #yum install cmake bison  ncurses-devel gcc gcc-c++  openssl-devel
  #cd /data
  #mkdir /usr/local/inception -P      --这里创建的是Inception的安装目录。可根据自己的情况自行决定
  #mkdir inception
  #cd inception
  #wget https://github.com/mysql-inception/inception/archive/master.zip
  #unzip master
  #cd inception-master/
  #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
  #vim /etc/inc.cnf
  # cat /etc/inc.cnf
[inception]

  general_log=1 #这个参数就是原生的MySQL的参数,用来记录在Inception服务上执行过哪些语句,用来定位一些问题等
  general_log_file=/usr/local/inception/data/inception.log #设置general log写入的文件路径
  port=6669   #Inception的服务端口
  socket=/data/inception/inc.socket #Inception的套接字文件存放位置
  character-set-server=utf8 #mysql原生参数
  #Inception 审核规则
  inception_check_autoincrement_datatype=1 #当建表时自增列的类型不为int或者bigint时报错
  inception_check_autoincrement_init_value=1 #当建表时自增列的值指定的不为1,则报错
  inception_check_autoincrement_name=1 #建表时,如果指定的自增列的名字不为ID,则报错,说明是有意义的,给提示
  inception_check_column_comment=1 #建表时,列没有注释时报错
  inception_check_column_default_value=0 #检查在建表、修改列、新增列时,新的列属性是不是要有默认值
  inception_check_dml_limit=1 #在DML语句中使用了LIMIT时,是不是要报错
  inception_check_dml_orderby=1 #在DML语句中使用了Order By时,是不是要报错
  inception_check_dml_where=1 #在DML语句中没有WHERE条件时,是不是要报错
  inception_check_identifier=1#打开与关闭Inception对SQL语句中各种名字的检查,如果设置为ON,则如果发现名字中存在除数字、字母、下划线之外的字符时,会报Identifier"invalidname" is invalid, valid options: [a-z,A-Z,0-9,_].
  inception_check_index_prefix=1 #是不是要检查索引名字前缀为"idx_",检查唯一索引前缀是不是"uniq_"
  inception_check_insert_field=1  #是不是要检查插入语句中的列链表的存在性
  inception_check_primary_key=1 #建表时,如果没有主键,则报错
  inception_check_table_comment=1 #建表时,表没有注释时报错
  inception_check_timestamp_default=0 #建表时,如果没有为timestamp类型指定默认值,则报错
  inception_enable_autoincrement_unsigned=1 #自增列是不是要为无符号型
  inception_enable_blob_type=0 #检查是不是支持BLOB字段,包括建表、修改列、新增列操作 默认开启
  inception_enable_column_ #允许列自己设置字符集
  inception_enable_enum_set_bit=0 #是不是支持enum,set,bit数据类型
  inception_enable_foreign_key=0 #是不是支持外键
  inception_enable_identifer_keyword=0 #检查在SQL语句中,是不是有标识符被写成MySQL的关键字,默认值为报警。
  inception_enable_not_innodb=0 #建表指定的存储引擎不为Innodb,不报错
  inception_enable_nullable=0 #创建或者新增列时如果列为NULL,不报错
  inception_enable_orderby_rand=0 #order by rand时是不是报错
  inception_enable_partition_table=0 #是不是支持分区表
  inception_enable_select_star=0 #Select*时是不是要报错
  inception_enable_sql_statistic=1#设置是不是支持统计Inception执行过的语句中,各种语句分别占多大比例,如果打开这个参数,则每次执行的情况都会在备份数据库实例中的inception库的statistic表中以一条记录存储这次操作的统计情况,每次操作对应一条记录,这条记录中含有的信息是各种类型的语句执行次数情况。
  inception_max_char_length=16 #当char类型的长度大于这个值时,就提示将其转换为VARCHAR
  inception_max_key_parts=5 #一个索引中,列的最大个数,超过这个数目则报错
  inception_max_keys=16 #一个表中,最大的索引数目,超过这个数则报错
  inception_max_update_rows=10000 #在一个修改语句中,预计影响的最大行数,超过这个数就报错
  inception_merge_alter_table=1 #在多个改同一个表的语句出现是,报错,提示合成一个
  #inception 支持 OSC 参数
  inception_osc_bin_dir=/data/temp #用于指定pt-online-schema-change脚本的位置,不可修改,在配置文件中设置
  inception_osc_check_interval=5 #对应OSC参数--check-interval,意义是Sleep time between checks for --max-lag.
  inception_osc_chunk_size=1000 #对应OSC参数--chunk-size
  inception_osc_chunk_size_limit=4 #对应OSC参数--chunk-size-limit
  inception_osc_chunk_time=0.1 #对应OSC参数--chunk-time
  inception_osc_critical_thread_connected=1000 #对应参数--critical-load中的thread_connected部分
  inception_osc_critical_thread_running=80 #对应参数--critical-load中的thread_running部分
  inception_osc_drop_new_table=1 #对应参数--[no]drop-new-table
  inception_osc_drop_old_table=1 #对应参数--[no]drop-old-table
  inception_osc_max_lag=3 #对应参数--max-lag
  inception_osc_max_thread_connected=1000 #对应参数--max-load中的thread_connected部分
  inception_osc_max_thread_running=80 #对应参数--max-load中的thread_running部分
  inception_osc_min_table_size=1# 这个参数实际上是一个OSC的开关,如果设置为0,则全部ALTER语句都走OSC,如果设置为非0,则当这个表占用空间大小大于这个值时才使用OSC方式。单位为M,这个表大小的计算方式是通过语句:"select(DATA_LENGTH + INDEX_LENGTH)/1024/1024 from information_schema.tables where table_schema = 'dbname' and table_name = 'tablename'"来实现的
  inception_osc_on=1 #一个全局的OSC开关,默认是打开的,如果想要关闭则设置为OFF,这样就会直接修改
  inception_osc_print_none=1 #用来设置在Inception返回结果集中,对于原来OSC在执行过程的标准输出信息是不是要打印到结果集对应的错误信息列中,如果设置为1,就不打印,如果设置为0,就打印。而如果出现错误了,则都会打印
  inception_osc_print_sql=1 #对应参数--print
  #inception_user#这个用户名在配置之后,在连接Inception的选项中可以不指定user,这样线上数据库的用户名及密码就可以不暴露了,可以做为临时使用的一种方式,但这个用户现在只能是用来审核,也就是说,即使在选项中指定--enable-execute,也不能执行,这个是只能用来审核的帐号。
  #inception_password #与上面的参数是一对,这个参数对应的是选项中的password,设置这个参数之后,可以在选项中不指定password
  inception_read_only=0#设置当前Inception服务器是不是只读的,这是为了防止一些人具有修改权限的帐号时,通过Inception误修改一些数据,如果inception_read_only设置为ON,则即使开了enable-execute,同时又有执行权限,也不会去执行,审核完成即返回
  #备份服务器信息
  inception_remote_system_password=123456
  inception_remote_system_user=root
  inception_remote_backup_port=3306
  inception_remote_backup_host=192.168.1.54
  inception_support_charset=utf8 #表示在建表或者建库时支持的字符集,如果需要多个,则用逗号分隔,影响的范围是建表、设置会话字符集、修改表字符集属性等
  启动:
  #nohup /usr/local/inception/bin/Inception --defaults-file &

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-450845-1-1.html 上篇帖子: centos 6.5上安装discuzX3.3 下篇帖子: Linux centos 7进入救援模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表