TokuDB安裝
安裝TokuDB:
0、關閉記憶體大頁
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
檢視下
cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]
tokuDB記憶體分配需要jemalloc支援,因此使用之前需要安裝jemalloc
yum install -y jemalloc
rpm -qa |grep jemalloc
jemalloc-3.6.0-1.el7.x86_64
rpm -ql jemalloc-3.6.0-1.el7.x86_64
/usr/bin/jemalloc.sh
/usr/lib64/libjemalloc.so.1
/usr/share/doc/jemalloc-3.6.0
/usr/share/doc/jemalloc-3.6.0/COPYING
/usr/share/doc/jemalloc-3.6.0/README
/usr/share/doc/jemalloc-3.6.0/VERSION
/usr/share/doc/jemalloc-3.6.0/jemalloc.html
1、從percona官網下載
https://www.percona.com/downloads/Percona-Server-LATEST/
tar xf Percona-Server-5.7.21-21-Linux.x86_64.ssl101.tar.gz
mv Percona-Server-5.7.21-21-Linux.x86_64.ssl101 tokudb57
mkdir /home/work/data/mysql3504
2、初如化
/home/work/tokudb57/bin/mysqld –defaults-file=/home/work/data/my3504.conf –basedir=/home/work/tokudb57/ –user=work –initialize-insecure
–initialize-insecure 初如化MySQL是空密碼
–defaults-file= 指定配置檔案,最好放在前面,不要放在最後
3、配置檔案my3306.conf
加入:
[mysqld_safe]
thp-setting=never
malloc-lib=/usr/lib64/libjemalloc.so.1
3、啟動
chown -R work:work /home/work/data/mysql3306/
改密碼:
set password=password(`123456`);
/home/work/tokudb57/bin/mysqld_safe –defaults-file=/home/work/data/mysql3306/my3306.conf –user=work &
4、安裝TokuDB
cd /home/work/tokudb57/bin/
ps_tokudb_admin –enable -u`root` -p -S /home/work/tmp/mysql3306.sock
/home/work/tokudb57/bin/ps_tokudb_admin –enable –user=root –password=“ –socket=/home/work/tmp/mysql3306.sock
Enter password:
WARNING: This script is deprecated and will be removed in 8.0. You can use ps-admin script which has more functionality.
Checking SELinux status…
INFO: SELinux is disabled.
Checking if Percona Server is running with jemalloc enabled…
INFO: Percona Server is running with jemalloc enabled.
Checking transparent huge pages status on the system…
INFO: Transparent huge pages are currently disabled on the system.
Checking if thp-setting=never option is already set in config file…
INFO: Option thp-setting=never is not set in the config file.
(needed only if THP is not disabled permanently on the system)
Checking TokuDB engine plugin status…
INFO: TokuDB engine plugin is not installed.
Adding thp-setting=never option into /etc/my.cnf
INFO: Successfully added thp-setting=never option into /etc/my.cnf
Installing TokuDB engine…
INFO: Successfully installed TokuDB engine plugin.
(root@(none))>show engines; | |||||
---|---|---|---|---|---|
Engine | Support | Comment | Transactions | XA | Savepoints |
PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
CSV | YES | CSV storage engine | NO | NO | NO |
BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
MyISAM | YES | MyISAM storage engine | NO | NO | NO |
TokuDB | YES | Percona TokuDB Storage Engine with Fractal Tree(tm) Technology | YES | YES | YES |
InnoDB | DEFAULT | Percona-XtraDB, Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
ARCHIVE | YES | Archive storage engine | NO | NO | NO |
MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
10 rows in set (0.00 sec)
此時InnoDB還是預設引擎 重啟下server,並在my3306.conf [mysqld]新增如下配置:
————- tokudb —————
default-storage-engine = TokuDB
tokudb_directio = on
tokudb_cache_size = 2G
tokudb_row_format = tokudb_lzma
tokudb_commit_sync = 0
tokudb_fsync_log_period = 1000
重啟後TokuDB 就是預設儲存引擎了
mysql> show engines; | |||||
---|---|---|---|---|---|
Engine | Support | Comment | Transactions | XA | Savepoints |
PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
CSV | YES | CSV storage engine | NO | NO | NO |
BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
MyISAM | YES | MyISAM storage engine | NO | NO | NO |
TokuDB | DEFAULT | Percona TokuDB Storage Engine with Fractal Tree(tm) Technology | YES | YES | YES |
InnoDB | YES | Percona-XtraDB, Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
ARCHIVE | YES | Archive storage engine | NO | NO | NO |
MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
10 rows in set (0.00 sec)
錯誤:
一、 初始化錯誤
[ERROR] InnoDB: Expected to open 4 undo tablespaces but was able to find only 0 undo tablespaces.Set the innodb_undo_tablespaces parameter to the correct value and retry. Suggested value is 0
解決:
報錯原因:
在初始化資料庫的時候沒有指定innodb_undo_tablespaces引數
解決方法:
在初始化資料庫的時候寫上–defaults-file引數,在對應的配置檔案中寫上對應的innodb_undo_tablespaces引數
/home/work/tokudb57/bin/mysqld –defaults-file=/home/work/data/my3504.conf –basedir=/home/work/tokudb57/ –user=work –initialize-insecure
二、tokudb安裝:
root@dqd-stat-mysql-slave01.bj.uc:/home/work/data# ps_tokudb_admin –enable -u`root` -p`123456` -h 127.0.0.1 -P 3504
WARNING: This script is deprecated and will be removed in 8.0. You can use ps-admin script which has more functionality.
Checking SELinux status…
INFO: SELinux is disabled.
ERROR: Failed to list mysql plugins! Please check username, password and other options for connecting to server…
使用者名稱和密碼都是正常的
解決:
/home/work/tokudb57/bin/ps_tokudb_admin –enable –user=root –password=“ –socket=/home/work/tmp/mysql3306.sock
三、 Percona Server 未啟動
/home/work/tokudb57/bin/ps_tokudb_admin –enable –user=root –password=“ –socket=/home/work/tmp/mysql3504.sock
WARNING: This script is deprecated and will be removed in 8.0. You can use ps-admin script which has more functionality.
Checking SELinux status…
INFO: SELinux is disabled.
cat: dqd-stat-mysql-slave01.bj.uc.pid: No such file or directory
Checking if Percona Server is running with jemalloc enabled…
grep: /proc//environ: No such file or directory
which: no mysqld in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/home/itools/python/bin/:/home/work/local/mysql/bin:/root/opt/bin/:/home/work/opbin/xtrabackup/bin:/home/work/nodejs/bin:/root/bin)
ldd: missing file arguments
Try `ldd –help` for more information.
ERROR: Percona Server is not running with jemalloc, please restart mysql service to enable it and then run this script…
搞了老錯誤,又來新錯誤, server是啟動的
解決:
root@dqd-stat-mysql-slave01.bj.uc:/home/work/data# grep “Percona Server is not running” /home/work/tokudb57/bin/ps_tokudb_admin
printf "ERROR: Percona Server is not running with jemalloc, please restart mysql service to enable it and then run this script...
";
printf "ERROR: Percona Server is not running with libHotBackup.so preloaded, please restart mysql service to enable it and then run this script again...
";
vim /home/work/tokudb57/bin/ps_tokudb_admin
if [ $ENABLE_TOKUBACKUP = 1 ]; then
printf “Checking if Percona Server is running with libHotBackup.so preloaded…n”
LIBHOTBACKUP_STATUS=$(grep -c libHotBackup.so /proc/${PID_NUM}/environ)
if [ $LIBHOTBACKUP_STATUS = 0 ]; then
printf "ERROR: Percona Server is not running with libHotBackup.so preloaded, please restart mysql service to enable it and then run this script again...
";
exit 1
else
printf "INFO: Percona Server is running with libHotBackup.so preloaded.
";
fi
fi
開啟指令碼和pid 有關 ,那就回一個pid
root@dqd-stat-mysql-slave01.bj.uc:/home/work/data# grep “pid” /home/work/data/mysql3306/my3306.conf
pid-file = /home/work/tmp/mysql.pid
相關文章
- 【原創】InnoDB 和TokuDB的讀寫分析與比較
- 安裝npm 解除安裝npm 安裝apidocNPMAPI
- BiocManager安裝,devtools安裝dev
- Linux安裝解除安裝MySQLLinuxMySql
- linux 安裝yum 安裝phpLinuxPHP
- Ubuntu解除安裝和安裝Ubuntu
- 02 安裝git、安裝TortoiseGitGit
- cocoapods安裝/解除安裝/使用
- JDK安裝和解除安裝JDK
- ffmpeg安裝之mac安裝Mac
- docker安裝及解除安裝Docker
- [ 安裝 ] Zeppelin安裝步驟!
- win10安裝版怎麼安裝_安裝版win10安裝教程Win10
- ElasticSearch的安裝和使用,Postman的安裝,Kibana的安裝,EShead外掛的安裝ElasticsearchPostman
- Mac Redis安裝與解除安裝MacRedis
- 安裝了IDLE後安裝tensorflow
- kratos安裝及依賴安裝
- Linux 解除安裝openjdk 安裝oraclejdkLinuxJDKOracle
- debian安裝和解除安裝vmware
- JDK的安裝與解除安裝JDK
- linux 解除安裝jdk和安裝LinuxJDK
- 【推薦 - glibc安裝】MySQL - 安裝MySql
- linux下安裝snap安裝工具Linux
- [雲原生]Docker - 安裝&解除安裝Docker
- Ubuntu安裝和解除安裝mongodbUbuntuMongoDB
- window下安裝並使用nvm(含解除安裝node、解除安裝nvm、全域性安裝npm)NPM
- 安裝
- air安裝win10怎麼解除安裝_air安裝win10如何解除安裝AIWin10
- Centos Docker安裝、升級、解除安裝CentOSDocker
- Webpack學習 – Webpack安裝及安裝Web
- Linux-Ubuntu-mysql-安裝&解除安裝LinuxUbuntuMySql
- Centos7.9安裝解除安裝DockerCentOSDocker
- Centos7安裝安裝部署dockerCentOSDocker
- Linux系統安裝——Centos 7.6安裝LinuxCentOS
- PostgreSQL 10.12 安裝系列 - 原始碼安裝SQL原始碼
- PostgreSQL 10.12 安裝系列 - 本地RPM安裝SQL
- 【 Linux 軟體安裝 】- 1 JDK安裝LinuxJDK
- Python pip的安裝及解除安裝Python