多設定檔部署mysql單機多執行個體

來源:互聯網
上載者:User

標籤:

1.安裝gcc-c++、ncurses依賴包

# yum install gcc-c++  ncurses-devel

2.安裝cmake,用來編譯mysql

# tar -xvf cmake-3.2.0-.tar.gz# mv cmake-3.2.0 cmake# mv cmake /tmp/# cd /tmp/cmake/# ./bootstrap# make# make install# cmake --version

3.安裝bison

# tar -xvf bison-3.0.tar.gz# mv bison-3.0 bison# mv bison /tmp# cd /tmp/bison/# ./cofigure# make# make install# bison --version

4.建立mysql使用者

# /usr/sbin/groupadd mysql# useradd -s /sbin/nologin -g  mysql -M mysql

5.編譯安裝

配置

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql 

產生可執行檔

# make

安裝

# make install

6.建立多執行個體的資料檔案目錄

# mkdir -p /data/{3306,3307}/data/# mkdir -p /data/{3306,3307}/log/# tree /data/data                            #多執行個體的根目錄├── 3306                         #3306執行個體的根目錄│   ├── data                     #3306執行個體的資料目錄│   └── log                      #3306執行個體的日誌目錄│   └── tmp                      #3306執行個體的臨時檔案目錄└── 3307                         #3307執行個體的根目錄    ├── data                     #3307執行個體的資料目錄    └── log                      #3307執行個體的日誌目錄    └── tmp                      #3307執行個體的臨時檔案目錄

data  - 存放資料檔案:資料,索引,二進位日誌(bin log),重放日誌(replay log)。
log    - 存放記錄檔:慢查詢日誌,錯誤記錄檔。
tmp  - 存放臨時檔案:進程ID檔案。

7.配置多執行個體的設定檔
為每個執行個體建立一個設定檔

# vi /data/3306/my.cnf[client]default-character-set = utf8port = 3306socket = /data/3306/tmp/mysql.sock[mysqld]server-id = 1collation-server = utf8_unicode_ciinit-connect = ‘SET NAMES utf8‘character-set-server = utf8port        = 3306socket      = /data/3306/tmp/mysql.sockdatadir     = /data/3306/data/log-error   = /data/3306/log/mysql.errpid-file     = /data/3306/tmp/mysql.pidlog-bin     = /data/3306/data/mysql-binrelay_log     = /data/3306/data/relay-binslow_query_log_file = /data/3306/log/slowquery.loggeneral_log_file     = /data/3306/log/general.logskip-external-lockingkey_buffer_size = 16Mmax_allowed_packet = 1Mtable_open_cache = 64sort_buffer_size = 512Knet_buffer_length = 8Kread_buffer_size = 256Kread_rnd_buffer_size = 512Kmyisam_sort_buffer_size = 8Mbinlog_format = mixedslow_query_log = 1long_query_time = 1general_log = off[mysqldump]quickmax_allowed_packet = 16M[mysql]no-auto-rehash[myisamchk]key_buffer_size = 20Msort_buffer_size = 20Mread_buffer = 2Mwrite_buffer = 2M[mysqlhotcopy]interactive-timeout
# vi /data/3307/my.cnf[client]default-character-set = utf8port = 3307socket = /data/3307/tmp/mysql.sock[mysqld]server-id = 2collation-server = utf8_unicode_ciinit-connect = ‘SET NAMES utf8‘character-set-server = utf8port        = 3307socket      = /data/3307/tmp/mysql.sockdatadir     = /data/3307/data/log-error   = /data/3307/log/mysql.errpid-file     = /data/3307/tmp/mysql.pidlog-bin     = /data/3307/data/mysql-binrelay_log     = /data/3307/data/relay-binslow_query_log_file = /data/3307/log/slowquery.loggeneral_log_file     = /data/3307/log/general.logskip-external-lockingkey_buffer_size = 16Mmax_allowed_packet = 1Mtable_open_cache = 64sort_buffer_size = 512Knet_buffer_length = 8Kread_buffer_size = 256Kread_rnd_buffer_size = 512Kmyisam_sort_buffer_size = 8Mbinlog_format = mixedslow_query_log = 1long_query_time = 1general_log = off[mysqldump]quickmax_allowed_packet = 16M[mysql]no-auto-rehash[myisamchk]key_buffer_size = 20Msort_buffer_size = 20Mread_buffer = 2Mwrite_buffer = 2M[mysqlhotcopy]interactive-timeout

8.配置多執行個體的檔案許可權
授權mysql使用者和組管理多執行個體目錄/data

# chown -R mysql.mysql /data

9.配置mysql命令的環境變數
方法一:

# echo ‘export PATH=/usr/local/mysql/bin:$PATH‘ >> /etc/profile
# source /etc/profile

方法二:
把/usr/local/mysql/bin/下面的命令拷貝到全域系統命令路徑/usr/local/sbin/下,或者做個link

10.初始化資料庫,建立基礎的資料庫檔案

# cd /usr/local/mysql/scripts/#./mysql_install_db --defaults-file=/data/3306/my.cnf --user=mysql --basedir=/usr/local/mysql#./mysql_install_db --defaults-file=/data/3307/my.cnf --user=mysql --basedir=/usr/local/mysql

11.啟動

# mysqld_safe --defaults-file=/data/3306/my.cnf 2>&1 > /dev/null &# mysqld_safe --defaults-file=/data/3307/my.cnf 2>&1 > /dev/null &

12.修改的root使用者的密碼並且限制只能本機登陸

# mysqladmin -S /data/3306/tmp/mysql.sock -u root -h ‘localhost‘ password ‘xxxx‘# mysqladmin -S /data/3307/tmp/mysql.sock -u root -h ‘localhost‘ password ‘xxxx‘

13.使用root使用者登陸

# mysql -S  /data/3306/tmp/mysql.sock -u root -p# mysql -S  /data/3307/tmp/mysql.sock -u root -p

14.停止執行個體

# mysqladmin -S /data/3306/tmp/mysql.sock -u root -p shutdown# mysqladmin -S /data/3307/tmp/mysql.sock -u root -p shutdown

  

多設定檔部署mysql單機多執行個體

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.