1. 程式人生 > >Percona Server 的安裝及tokudb引擎的安裝筆記

Percona Server 的安裝及tokudb引擎的安裝筆記

percona server 的安裝及tokudb引擎的安裝筆記

Percona Server 的安裝及tokudb引擎的安裝筆記


2017年7月7日


安裝percona server:

yum localinstall Percona-Server-client-57-5.7.18-15.1.el6.x86_64.rpm Percona-Server-shared-57-5.7.18-15.1.el6.x86_64.rpm Percona-Server-server-57-5.7.18-15.1.el6.x86_64.rpm Percona-Server-tokudb-57-5.7.18-15.1.el6.x86_64.rpm

安裝過程中,會自動安裝jmelloc組件。



/etc/my.cnf 內容如下:

[client]

port = 3306

socket = /tmp/mysql.sock


[mysqld]

port = 3306

socket = /tmp/mysql.sock

datadir = /var/lib/mysql

innodb_file_per_table=ON

character-set-server = utf8


server_id=1000


join_buffer_size = 256K

thread_stack = 256K


default_storage_engine = InnoDB


max_connections = 2000

#slave-skip-errors = 1032,1062

#性能相關調節

#跳過外部鎖定,用於多進程條件下為MyISAM數據表進行鎖定

skip-external-locking

sort_buffer_size = 4M

read_buffer_size = 4M

read_rnd_buffer_size = 4M

myisam_sort_buffer_size = 64M


#自適應哈希索引,在高並發復雜sql場景下有可能引發系統資源不足,大量spin waits ,lock waits 鎖等待,導致崩潰

skip-innodb_adaptive_hash_index


#為所有線程打開表的數量

table_open_cache = 2048

#索引塊的緩沖區大小

key_buffer_size = 128M

#MySQL查詢結果緩沖區的大小

query_cache_type = OFF

query_cache_size = 0

#處理大的信息包量

max_allowed_packet = 16M


#1G=>8 2G=>16 3G=>32 >3G=>64

#緩存可重用的線程數

thread_cache_size = 64


event_scheduler = 1

long_query_time = 1

slow_query_log=1

slow_query_log_file = /var/lib/mysql/log-slow-queries.log

log-error = /var/lib/mysql/error.log


max_binlog_size = 256m


transaction_isolation = READ-COMMITTED


#innodb_io_capacity=1000


master_info_repository = TABLE

relay_log_info_repository = TABLE

relay_log_recovery = 1 #crash safe

log-bin=mysql-bin

binlog_format=row

sync_binlog =1

log-slave-updates

log_bin_trust_function_creators = 1

binlog_rows_query_log_events=ON


expire_logs_days = 5

auto_increment_increment=1

auto_increment_offset=1

skip-slave-start

skip-name-resolve


binlog_cache_size = 16M

binlog_stmt_cache_size=16M


########innodb settings########

innodb_buffer_pool_instances = 4 #小於邏輯CPU個數,盡可能調大一點

innodb_log_buffer_size = 16777216

innodb_read_io_threads = 4 #小於邏輯CPU個數/2,盡可能調大一點

innodb_write_io_threads=4 # <=(邏輯CPU個數 -read_io_threads) ,盡可能調大一點

innodb_purge_threads = 2

innodb_flush_method=O_DIRECT



# Timeout

connect_timeout = 20

wait_timeout = 14400

interactive_timeout = 14400

net_write_timeout = 180

lock_wait_timeout = 120


tmp_table_size=200M

max_heap_table_size=200M


sql_mode = ‘NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER‘


[mysqldump]

quick

max_allowed_packet = 16M


[mysql]

no-auto-rehash

# Remove the next comment character if you are not familiar with SQL

#safe-updates

prompt =‘[\\u@\\h:\\d] >‘


[myisamchk]

key_buffer_size = 512M

sort_buffer_size = 512M

read_buffer = 8M

write_buffer = 8M


[mysqlhotcopy]

interactive-timeout





初始化數據庫:

/usr/sbin/mysqld --initialize-insecure --basedir=/usr/sbin/ --user=mysql --datadir=/var/lib/mysql/

# 說明:使用 --initialize-insecure參數,不讓mysqld初始化時候生成隨機密碼,保持空密碼


啟動數據庫:

/etc/init.d/mysql start



設置數據庫密碼:

mysql

> set password=PASSWORD([email protected]);

> flush privileges;

> exit




然後,開始安裝tokudb引擎:

官方詳細的安裝步驟: https://www.percona.com/doc/percona-server/5.7/tokudb/tokudb_installation.html



1 禁用Transparent huge pages

cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

always代表已啟用


echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/defrag


# 將設置寫入到文件,防止重啟配置丟失

echo ‘echo never > /sys/kernel/mm/transparent_hugepage/enabled‘ >> /etc/rc.local

echo ‘echo never > /sys/kernel/mm/transparent_hugepage/defrag‘ >> /etc/rc.local



2、安裝並啟用tokudb引擎:

## 可以使用INSTALL PLUGIN方法安裝,也可以使用ps_tokudb_admin這個工具進行配置(推薦使用ps_tokudb_admin)

執行 ps_tokudb_admin -uroot [email protected] --enable

會自動在 /etc/my.cnf 在加入下面的1行配置

[mysqld_safe]

thp-setting=never


然後再執行 ps_tokudb_admin -uroot [email protected] --enable-backup

會自動在 /etc/my.cnf 在加入下面的1行配置

[mysqld_safe]

preload-hotbackup


這樣就完成了TokuDB engine plugin和TokuBackup plugin插件的安裝。




重啟mysqld進程。

/etc/init.d/mysql restart

mysql -uroot [email protected]

> show engines;

> show plugins;

> SELECT @@tokudb_version;


都可以看到tokudb啟用了。


這樣的話,我們重啟了mysqld或者整個服務器的話,tokudb引擎也能在mysql重啟時候再次自動加載。


本文出自 “菜雞” 博客,請務必保留此出處http://lee90.blog.51cto.com/10414478/1945419

Percona Server 的安裝及tokudb引擎的安裝筆記