對(duì)mysql的學(xué)習(xí)很有興趣拔稳,為了深入的學(xué)習(xí)并且很好的在線上使用,在了解了去哪里關(guān)于開源inception的文檔學(xué)習(xí)锹雏,一下為我的安裝筆記與心得巴比。
1,關(guān)于inception。
MySQL語(yǔ)句的審核轻绞,在業(yè)界都已經(jīng)基本被認(rèn)同了采记,實(shí)際上也是對(duì)MySQL語(yǔ)句寫法的統(tǒng)一化,標(biāo)準(zhǔn)化政勃,而之前的人工審核唧龄,針對(duì)標(biāo)準(zhǔn)這個(gè)問題其實(shí)是很吃力的,標(biāo)準(zhǔn)越多稼病,DBA越累选侨,開發(fā)也越累。
那么在這個(gè)都追求自動(dòng)化運(yùn)維的時(shí)代然走,審核也必須要跟上步伐援制,因此Inception誕生了。而Inception可以做的工作遠(yuǎn)不止是一個(gè)自動(dòng)化審核工具芍瑞,同時(shí)還具備執(zhí)行晨仑,生成對(duì)影響數(shù)據(jù)的回滾語(yǔ)句(類似閃回的功能),這樣一條龍服務(wù)的工具拆檬,將會(huì)給DBA的工作帶來翻天覆地的變化洪己,DBA從此就從繁重的審核、登上去執(zhí)行竟贯,出錯(cuò)了很難回滾(如果提前沒有備份的話)的被動(dòng)局面解放了出來答捕,突然發(fā)現(xiàn),做DBA原來可以這么輕松屑那,工作可以不飽和了拱镐,那就有更多的自由時(shí)間學(xué)習(xí)、進(jìn)一步向自動(dòng)化運(yùn)維平臺(tái)的實(shí)現(xiàn)等更智能化的方向去發(fā)展持际,是具有里程碑意義的沃琅。
2,inception架構(gòu)原理蜘欲。
3益眉,安裝inception。
實(shí)際上編譯Inception姥份,和編譯MySQL源碼是一樣的郭脂。
(1)環(huán)境準(zhǔn)備
#yum install -y gcc gcc-c++ make ncurses-devel bison openssl-devel zlib-devel cmake
(2)源碼地址
#git clone? https://github.com/mysql-inception/inception.git
(3)編譯
#cmake -DWITH_DEBUG=OFF -DCMAKE_INSTALL_PREFIX=./mysql? -DMYSQL_DATADIR=./mysql/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
(4)啟動(dòng)inception。
#/usr/local/src/inception/mysql/bin/Inception
#netstat -antlp |grep? ./Inception
tcp? ? ? ? 0? ? ? 0 :::3306? ? ? ? ? ? ? ? ? ? :::*? ? ? ? ? ? ? ? ? ? ? ? LISTEN? ? ? 16727/./Inception
(5)登錄成功
#/usr/local/src/inception/mysql/bin/mysql
登錄上去之后澈歉,再執(zhí)行一個(gè)命令:
inception get variables;
mysql> inception get variables;
+------------------------------------------+----------------------------------------------------+
| Variable_name? ? ? ? ? ? ? ? ? ? ? ? ? ? | Value? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
+------------------------------------------+----------------------------------------------------+
| autocommit? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| bind_address? ? ? ? ? ? ? ? ? ? ? ? ? ? | *? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_system? ? ? ? ? ? ? ? ? ? | utf8? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_sets_dir? ? ? ? ? ? ? ? ? ? ? | /usr/local/src/inception/mysql/bin/share/charsets/ |
| connect_timeout? ? ? ? ? ? ? ? ? ? ? ? ? | 10? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| date_format? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | %Y-%m-%d? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| datetime_format? ? ? ? ? ? ? ? ? ? ? ? ? | %Y-%m-%d %H:%i:%s? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| general_log? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| general_log_file? ? ? ? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_autoincrement_datatype? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_autoincrement_init_value | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_autoincrement_name? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_column_comment? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_column_default_value? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_dml_limit? ? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_dml_orderby? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_dml_where? ? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_identifier? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_index_prefix? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_insert_field? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_primary_key? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_table_comment? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_check_timestamp_default? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_ddl_support? ? ? ? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_autoincrement_unsigned? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_blob_type? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_column_charset? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_enum_set_bit? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_foreign_key? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_identifer_keyword? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_not_innodb? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_nullable? ? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_orderby_rand? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_partition_table? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_select_star? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_enable_sql_statistic? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_max_char_length? ? ? ? ? ? ? ? | 16? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_max_key_parts? ? ? ? ? ? ? ? ? | 5? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_max_keys? ? ? ? ? ? ? ? ? ? ? | 16? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_max_update_rows? ? ? ? ? ? ? ? | 10000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_merge_alter_table? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_bin_dir? ? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_check_interval? ? ? ? ? ? | 5.000000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_chunk_size? ? ? ? ? ? ? ? | 1000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_chunk_size_limit? ? ? ? ? | 4.000000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_chunk_time? ? ? ? ? ? ? ? | 1.000000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_critical_thread_connected? | 1000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_critical_thread_running? ? | 80? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_drop_new_table? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_drop_old_table? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_max_lag? ? ? ? ? ? ? ? ? ? | 3.000000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_max_thread_connected? ? ? | 1000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_max_thread_running? ? ? ? | 80? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_min_table_size? ? ? ? ? ? | 16? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_on? ? ? ? ? ? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_print_none? ? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_print_sql? ? ? ? ? ? ? ? ? | ON? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_osc_recursion_method? ? ? ? ? | processlist? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_password? ? ? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_read_only? ? ? ? ? ? ? ? ? ? ? | OFF? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_remote_backup_host? ? ? ? ? ? | localhost? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_remote_backup_port? ? ? ? ? ? | 0? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_remote_system_password? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_remote_system_user? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_support_charset? ? ? ? ? ? ? ? | utf8mb4? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| inception_user? ? ? ? ? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| interactive_timeout? ? ? ? ? ? ? ? ? ? ? | 28800? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| max_allowed_packet? ? ? ? ? ? ? ? ? ? ? | 1073741824? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| max_connect_errors? ? ? ? ? ? ? ? ? ? ? | 100? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| max_connections? ? ? ? ? ? ? ? ? ? ? ? ? | 151? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| net_buffer_length? ? ? ? ? ? ? ? ? ? ? ? | 16384? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| net_read_timeout? ? ? ? ? ? ? ? ? ? ? ? | 30? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| net_write_timeout? ? ? ? ? ? ? ? ? ? ? ? | 60? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| port? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | 3306? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| query_alloc_block_size? ? ? ? ? ? ? ? ? | 8192? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| query_prealloc_size? ? ? ? ? ? ? ? ? ? ? | 8192? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| socket? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | /tmp/inception.sock? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| thread_handling? ? ? ? ? ? ? ? ? ? ? ? ? | one-thread-per-connection? ? ? ? ? ? ? ? ? ? ? ? ? |
| thread_stack? ? ? ? ? ? ? ? ? ? ? ? ? ? | 262144? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| time_format? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | %H:%i:%s? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| version? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | Inception2.1.17? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| version_comment? ? ? ? ? ? ? ? ? ? ? ? ? | Source distribution? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| version_compile_machine? ? ? ? ? ? ? ? ? | x86_64? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| version_compile_os? ? ? ? ? ? ? ? ? ? ? | Linux? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| wait_timeout? ? ? ? ? ? ? ? ? ? ? ? ? ? | 28800? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
+------------------------------------------+----------------------------------------------------+
85 rows in set (0.00 sec)
#mysql> show databases;
+----+-------+----------+-------------+--------------------------------+--------------------+---------------+----------+---------------+--------------+---------+
| ID | stage | errlevel | stagestatus | errormessage? ? ? ? ? ? ? ? ? | SQL? ? ? ? ? ? ? ? | Affected_rows | sequence | backup_dbname | execute_time | sqlsha1 |
+----+-------+----------+-------------+--------------------------------+--------------------+---------------+----------+---------------+--------------+---------+
|? 1 | NONE? |? ? ? ? 2 | None? ? ? ? | Must start as begin statement. | Global environment |? ? ? ? ? ? 0 | None? ? | None? ? ? ? ? | 0? ? ? ? ? ? | None? ? |
+----+-------+----------+-------------+--------------------------------+--------------------+---------------+----------+---------------+--------------+---------+
1 row in set, 1 warning (0.00 sec)