一、環境說明
(1)CentOS-7-x86_64,內核版本
| uname -r3.10.0-693.el7.x86_64 |
(2)Mysql版本
| percona-server-5.6.29 |
(3)文件存放路徑
| /home/soft |
二、安裝前準備
(1)配置權限
| groupadd mysqluseradd -r -g mysql mysql |
(2)創建安裝目錄
| mkdir /usr/local/mysql #mysql安裝目錄chown -R mysql:mysql /usr/local/mysqlmkdir /usr/local/mysql/dataconf #數據庫配置存放目錄chown -R mysql:mysql /usr/local/mysql/dataconfmkdir /usr/local/mysql/sock #運行mysql時mysql.sock存放目錄chown -R mysql:mysql /usr/local/mysql/sock mkdir /var/log/mysql #創建日志存放目錄touch /var/log/mysql/mysql.logchown -R mysql:mysql /var/log/mysql/mysql.log touch /usr/local/mysql/my.cnf #創建mysql配置文件 |
三、安裝編譯環境
| yum install readline-devel git gcc gcc-c++ make cmake bison bison-devel ncurses-devel libaio-devel perl zlib1g-dev autoconf |
四、編譯安裝percona
| cd /home/soft/tar zxvf percona-server-5.6.29-76.2.tar.gz cd percona-server-5.6.29-76.2cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql #需要使用cmake進行安裝,這里表示的是文件安裝目錄-DSYSCONFDIR=/usr/local/mysql #存放配置文件的目錄-DMYSQL_DATADIR=/usr/local/mysql/dataconf #存放數據庫的目錄-DMYSQL_UNIX_ADDR=/usr/local/mysql/sock/mysqld.sock #存放mysql.sock文件的目錄-DMYSQL_TCP_PORT=3306 -DWITH_MYISAM_STORAGE_ENGINE=1 #配置端口-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 #配置默認的字符編碼格式-DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=1 -DWITH_EDITLINE=bundled -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DWITH_EMBEDDED_SERVER=OFF |

之后,繼續編譯安裝。
| make -j 8 #大概需要30-40分鐘左右。如果報錯,請使用make clean , rm -rf CMakeCache.txtmake install |
五、配置Percona參數
| cat /usr/local/mysql/my.cnf[mysqld]# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0explicit_defaults_for_timestamp=true federated# Settings user and group are ignored when systemd is used.# If you need to run mysqld under a different user or group,# customize your systemd unit file for mariadb according to the# instructions in http://fedoraproject.org/wiki/Systemdbasedir=/usr/local/mysqldatadir=/usr/local/mysql/dataconfport=3306socket=/usr/local/mysql/sock/mysql.socksymbolic-links=0character_set_server=utf8pid-file=/usr/local/mysql/mysql.pidskip-grant-tables[mysqld_safe]log-error=/var/log/mysql/mysql.logpid-file=/usr/local/mysql/mysql.pidsocket=/usr/local/mysql/sock/mysql.sock[client] socket=/usr/local/mysql/mysql.sock [mysql.server] user=mysql basedir=/usr/local/mysql socket=/usr/local/mysql/sock/mysql.sock[mysql]socket=/usr/local/mysql/sock/mysql.sock |