<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        [MySQL]MySQL的自動化安裝部署_MySQL

        來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 19:59:37
        文檔

        [MySQL]MySQL的自動化安裝部署_MySQL

        [MySQL]MySQL的自動化安裝部署_MySQL:bitsCN.com 有過MySQL運維的人應(yīng)該都清楚,線上的MySQL一般都采用源碼編譯,因為這樣才可以根據(jù)企業(yè)的各自需要選擇要編譯的功能,雖然MySQL的源碼編譯挺簡單的,但是試想一下,如果你有幾百臺服務(wù)器同時要安裝MySQL,難道你還一臺臺去手動編譯、編寫配置文件
        推薦度:
        導(dǎo)讀[MySQL]MySQL的自動化安裝部署_MySQL:bitsCN.com 有過MySQL運維的人應(yīng)該都清楚,線上的MySQL一般都采用源碼編譯,因為這樣才可以根據(jù)企業(yè)的各自需要選擇要編譯的功能,雖然MySQL的源碼編譯挺簡單的,但是試想一下,如果你有幾百臺服務(wù)器同時要安裝MySQL,難道你還一臺臺去手動編譯、編寫配置文件

        bitsCN.com

        有過MySQL運維的人應(yīng)該都清楚,線上的MySQL一般都采用源碼編譯,因為這樣才可以根據(jù)企業(yè)的各自需要選擇要編譯的功能,雖然MySQL的源碼編譯挺簡單的,但是試想一下,如果你有幾百臺服務(wù)器同時要安裝MySQL,難道你還一臺臺去手動編譯、編寫配置文件嗎?這顯然太低效了,本文討論MySQL的自動化安裝部署。

        1、制作符合自己需求的RPM包

        我們要根據(jù)MySQL的源碼編譯符合企業(yè)需求的RPM包,源碼獲取命令如下:
        wget http://downloads.mysql.com/archives/get/file/mysql-5.6.16.tar.gztar -zxvf mysql-5.6.16.tar.gzcd mysql-5.6.16mkdir rpmcd rpm
        在上面我們獲取了源碼,并在源碼主目錄下創(chuàng)建rpm目錄,接著我們在該目錄下創(chuàng)建mysql.spec文件:
        Name: mysqlVersion:5.6.16Release: guahaoLicense: GPLURL: http://downloads.mysql.com/archives/get/file/mysql-5.6.16.tar.gzGroup: applications/databaseBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: cmakePackager: zhuxj@guahao.comAutoreq: noprefix: /opt/mysqlSummary: MySQL 5.6.16%description The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,and robust SQL (Structured Query Language) database server. MySQL Serveris intended for mission-critical, heavy-load production systems as wellas for embedding into mass-deployed software.%define MYSQL_USER mysql%define MYSQL_GROUP mysql%define __os_install_post %{nil}%buildcd $OLDPWD/../CFLAGS="-O3 -g -fno-exceptions -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"CXX=g++CXXFLAGS="-O3 -g -fno-exceptions -fno-rtti -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"export CFLAGS CXX CXXFLAGScmake . / -DSYSCONFDIR:PATH=%{prefix} / -DCMAKE_INSTALL_PREFIX:PATH=%{prefix} / -DCMAKE_BUILD_TYPE:STRING=Release / -DENABLE_PROFILING:BOOL=ON / -DWITH_DEBUG:BOOL=OFF / -DWITH_VALGRIND:BOOL=OFF / -DENABLE_DEBUG_SYNC:BOOL=OFF / -DWITH_EXTRA_CHARSETS:STRING=all / -DWITH_SSL:STRING=bundled / -DWITH_UNIT_TESTS:BOOL=OFF / -DWITH_ZLIB:STRING=bundled / -DWITH_PARTITION_STORAGE_ENGINE:BOOL=ON / -DWITH_INNOBASE_STORAGE_ENGINE:BOOL=ON / -DWITH_ARCHIVE_STORAGE_ENGINE:BOOL=ON / -DWITH_BLACKHOLE_STORAGE_ENGINE:BOOL=ON / -DWITH_PERFSCHEMA_STORAGE_ENGINE:BOOL=ON / -DDEFAULT_CHARSET=utf8 / -DDEFAULT_COLLATION=utf8_general_ci / -DWITH_EXTRA_CHARSETS=all / -DENABLED_LOCAL_INFILE:BOOL=ON / -DWITH_EMBEDDED_SERVER=0 / -DINSTALL_LAYOUT:STRING=STANDALONE / -DCOMMUNITY_BUILD:BOOL=ON / -DMYSQL_SERVER_SUFFIX='-r5436';make -j `cat /proc/cpuinfo | grep processor| wc -l`%installcd $OLDPWD/../make DESTDIR=$RPM_BUILD_ROOT install%cleanrm -rf $RPM_BUILD_ROOT%files%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP})%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/*%pre%postln -s %{prefix}/lib %{prefix}/lib64%preun%changelog
        有了這個spec文件之后,就可以執(zhí)行如下命令生成我們自己的RPM包:
        rpmbuild -bb ./mysql.spec

        2、編寫my.cnf模板

        my.cnf模板如下:
        [mysqld_safe]pid-file=/opt/mysql/run/mysqld.pid[mysql]prompt=//u@//d //r://m://s>default-character-set=gbkno-auto-rehash[client]socket=/opt/mysql/run/mysql.sock[mysqld]#dirbasedir=/opt/mysqldatadir=/data/mysql/datatmpdir=/data/mysql/tmplog-error=/data/mysql/log/alert.logslow_query_log_file=/data/mysql/log/slow.loggeneral_log_file=/data/mysql/log/general.logsocket=/opt/mysql/run/mysql.sock#innodbinnodb_data_home_dir=/data/mysql/datainnodb_log_group_home_dir=/data/mysql/datainnodb_data_file_path=ibdata1:2G;ibdata2:16M:autoextendinnodb_buffer_pool_size=10Ginnodb_buffer_pool_instances=4innodb_log_files_in_group=4innodb_log_file_size=1Ginnodb_log_buffer_size=200Minnodb_flush_log_at_trx_commit=1innodb_additional_mem_pool_size=20Minnodb_max_dirty_pages_pct=60innodb_io_capacity=200innodb_thread_concurrency=32innodb_read_io_threads=8innodb_write_io_threads=8innodb_open_files=60000innodb_file_format=Barracudainnodb_file_per_table=1innodb_flush_method=O_DIRECTinnodb_change_buffering=allinnodb_adaptive_flushing=1innodb_old_blocks_time=1000innodb_stats_on_metadata=0innodb_read_ahead=0innodb_use_native_aio=0innodb_lock_wait_timeout=50innodb_rollback_on_timeout=0innodb_purge_threads=1innodb_strict_mode=1transaction-isolation=READ-COMMITTED#myisamkey_buffer_size=100Mmyisam_sort_buffer_size=64Mconcurrent_insert=2delayed_insert_timeout=300#replicationmaster-info-file=/data/mysql/log/master.inforelay-log=/data/mysql/log/mysql-relayrelay_log_info_file=/data/mysql/log/mysql-relay.inforelay-log-index=/data/mysql/log/mysql-relay.indexslave_load_tmpdir=/data/mysql/tmpslave_type_conversions="ALL_NON_LOSSY"slave_net_timeout=4skip-slave-startsync_master_info=1000sync_relay_log_info=1000#binloglog-bin=/data/mysql/log/mysql-binserver_id=2552763370binlog_cache_size=32Kmax_binlog_cache_size=2Gmax_binlog_size=500Mbinlog_format=ROWsync_binlog=1000log-slave-updates=1expire_logs_days=0#serverdefault-storage-engine=INNODBcharacter-set-server=gbklower_case_table_names=1skip-external-lockingopen_files_limit=65536safe-user-createlocal-infile=1performance_schema=0log_slow_admin_statements=1log_warnings=1long_query_time=1slow_query_log=1general_log=0query_cache_type=0query_cache_limit=1Mquery_cache_min_res_unit=1Ktable_definition_cache=65536thread_stack=512Kthread_cache_size=256read_rnd_buffer_size=128Ksort_buffer_size=256Kjoin_buffer_size=128Kread_buffer_size=128Kport=3306skip-name-resolveskip-sslmax_connections=4500max_user_connections=4000max_connect_errors=65536max_allowed_packet=128Mconnect_timeout=8net_read_timeout=30net_write_timeout=60back_log=1024#server id
        細心的讀者應(yīng)該會注意在,在my.cnf的末尾在server id上留了空白,在后面的shell腳本會動態(tài)加上,這是因為在一個企業(yè)內(nèi)部的所有MySQL的server id必須保持全局一致性,這樣在主備復(fù)制時才不會導(dǎo)致混亂。其實如果想把這個腳本寫的更通用,完全可以把更多的參數(shù)留白,如port、datadir、內(nèi)存相關(guān)參數(shù)等,這里我只是以server id為例,拋磚引玉。

        3、準備MySQL數(shù)據(jù)目錄模板

        你得事先準備一臺MySQL,可以根據(jù)自己的需求,把通用性的東西放在上面(如賬戶等),下面是一個最簡單的已安裝好的MySQL的數(shù)據(jù)目錄結(jié)構(gòu):
        [root@lx25 mysql]# ls -ltotal 12drwxr-xr-x 5 mysql mysql 4096 Jul 2 09:26 datadrwxr-xr-x 2 mysql mysql 4096 Jul 1 18:21 logdrwxr-xr-x 2 mysql mysql 4096 Jul 2 09:26 tmp[root@lx25 mysql]# cd data[root@lx25 data]# ls -ltotal 6314044drwx------ 2 mysql mysql 4096 Jul 1 17:17 mysqldrwx------ 2 mysql mysql 4096 Jul 1 17:17 performance_schemadrwx------ 2 mysql mysql 4096 Jul 1 17:17 test
        把該目錄用tar打包(命名為data.tar),然后以這個為模板解壓至新裝MySQL實例的數(shù)據(jù)目錄下即可。

        4、編寫自動化安裝部署腳本

        在運行這個腳本之前,我們必須得把前面幾部制作的rpm包、my.cnf模板和數(shù)據(jù)目錄模板放到一個固定的地方,本例中是放在企業(yè)內(nèi)部的ftp上。MySQL自動化安裝部署腳本(命名為:mysql_install.sh)如下:
        #!/bin/sh#Step 1: Prepareyum install cmake gcc g++ bison ncurses-devel zlib groupadd mysqluseradd -g mysql mysql#Step 2: Get Sourceftp -n<> my.cnfrpm -ivh mysql-5.6.16-guahao.x86_64.rpmcp my.cnf /opt/mysqlchown -R mysql:mysql /opt/mysqltar xvf data.tar -C /datachown -R mysql:mysql /data/mysql#step 4: Start MySQLcp /opt/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqldchmod 755 /etc/init.d/mysqldchkconfig mysqld on/etc/init.d/mysqld start

        bitsCN.com

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        [MySQL]MySQL的自動化安裝部署_MySQL

        [MySQL]MySQL的自動化安裝部署_MySQL:bitsCN.com 有過MySQL運維的人應(yīng)該都清楚,線上的MySQL一般都采用源碼編譯,因為這樣才可以根據(jù)企業(yè)的各自需要選擇要編譯的功能,雖然MySQL的源碼編譯挺簡單的,但是試想一下,如果你有幾百臺服務(wù)器同時要安裝MySQL,難道你還一臺臺去手動編譯、編寫配置文件
        推薦度:
        標簽: 安裝 自動化 配置
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 免费的一级片网站| 亚洲第一香蕉视频| 久久亚洲中文字幕精品一区四| 亚洲日韩欧洲乱码AV夜夜摸| 亚洲沟沟美女亚洲沟沟| 免费看无码特级毛片| 精品无码国产污污污免费| 亚洲码欧美码一区二区三区| 免费人成黄页在线观看日本| 国产猛烈高潮尖叫视频免费| 久久亚洲AV无码精品色午夜| 久青草国产免费观看| 久久久www成人免费毛片| 久热综合在线亚洲精品| 美女被免费视频网站a| 免费国产作爱视频网站| 亚洲乱色熟女一区二区三区丝袜| 巨胸喷奶水视频www免费视频| 日韩免费观看的一级毛片| 亚洲国产精品张柏芝在线观看| 182tv免费视频在线观看| 久久久久亚洲av无码尤物| 一个人看的www免费高清| 中文字幕亚洲一区| 又硬又粗又长又爽免费看| 国产jizzjizz免费视频| 亚洲一卡2卡3卡4卡5卡6卡| 999国内精品永久免费观看| 亚洲av午夜福利精品一区人妖| 中文字幕亚洲免费无线观看日本| 亚洲美女又黄又爽在线观看| 日韩午夜理论免费TV影院 | 67pao强力打造国产免费| 亚洲伊人色欲综合网| 99蜜桃在线观看免费视频网站| 亚洲最大的黄色网| 久热中文字幕在线精品免费| 亚洲欧洲国产经精品香蕉网| 午夜爱爱免费视频| 亚洲高清乱码午夜电影网| 免费黄网在线观看|