天天看點

安裝Percona Server資料庫(in CentOS 8)

在CentOS8下搭建PXC叢集一文中,介紹了如何搭建Percona Server叢集。實際上PXC的安裝包已經捆綁了Percona Server,是以在安裝時會屏蔽Percona Server的一些細節。但有時候可能會單獨用到Percona Server,是以本文單獨介紹一下Percona Server的安裝。需要注意的是:Percona Server隻支援Linux系統,不能安裝在其他作業系統上。

Percona Server主要有兩種較為簡單的安裝方式,一是自己下載下傳安裝包進行本地安裝,二是通過官方提供的

rpm

源連結進行線上安裝。

先上官方的安裝文檔:

  • Installing Percona Server for MySQL 8.0.18-9

環境版本說明:

  • CentOS 8
  • Percona Server for MySQL 8.0.18

本地安裝

本地安裝需要将安裝包下載下傳到系統中,Percona Server的官網下載下傳位址如下:

  • https://www.percona.com/downloads/Percona-Server-LATEST/

打開上面的網址,選擇相應的版本及作業系統,最後複制安裝包的下載下傳連結:

安裝Percona Server資料庫(in CentOS 8)

然後到指令行上通過

wget

指令進行下載下傳:

[root@localhost ~]# cd /usr/local/src
[root@localhost /usr/local/src]# wget https://www.percona.com/downloads/Percona-Server-LATEST/Percona-Server-8.0.18-9/binary/redhat/8/x86_64/Percona-Server-8.0.18-9-r53e606f-el8-x86_64-bundle.tar           

将Percona Server的壓縮包按照如下指令進行解壓縮:

[root@localhost /usr/local/src]# mkdir Percona-Server  # 建立目錄存儲解壓出來的檔案
[root@localhost /usr/local/src]# tar -xvf Percona-Server-8.0.18-9-r53e606f-el8-x86_64-bundle.tar -C Percona-Server  # 解壓并将解壓後的檔案存放至 Percona-Server 目錄
[root@localhost /usr/local/src]# ls Percona-Server # 解壓後,就是一堆的.rpm檔案
percona-mysql-router-8.0.18-9.1.el8.x86_64.rpm
percona-mysql-router-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-client-8.0.18-9.1.el8.x86_64.rpm
percona-server-client-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-debugsource-8.0.18-9.1.el8.x86_64.rpm
percona-server-devel-8.0.18-9.1.el8.x86_64.rpm
percona-server-rocksdb-8.0.18-9.1.el8.x86_64.rpm
percona-server-rocksdb-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-server-8.0.18-9.1.el8.x86_64.rpm
percona-server-server-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-shared-8.0.18-9.1.el8.x86_64.rpm
percona-server-shared-compat-8.0.18-9.1.el8.x86_64.rpm
percona-server-shared-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-test-8.0.18-9.1.el8.x86_64.rpm
percona-server-test-debuginfo-8.0.18-9.1.el8.x86_64.rpm
percona-server-tokudb-8.0.18-9.1.el8.x86_64.rpm
percona-server-tokudb-debuginfo-8.0.18-9.1.el8.x86_64.rpm
[root@localhost /usr/local/src]#            

Percona Server的安裝需要依賴于jemalloc,是以在安裝Percona Server之前,我們得先準備好jemalloc的

rpm

包。可以到以下網址擷取下載下傳連結:

  • https://pkgs.org/download/jemalloc

進入建立的

Percona-Server

目錄,下載下傳jemalloc的

rpm

包:

[root@localhost /usr/local/src]# cd Percona-Server
[root@localhost /usr/local/src/Percona-Server]# wget http://rpms.remirepo.net/enterprise/8/remi/x86_64//jemalloc-5.1.0-3.el8.remi.x86_64.rpm           

完成以上步驟後,現在就可以通過

yum

指令以本地形式安裝Percona Server了:

[root@localhost /usr/local/src/Percona-Server]# yum localinstall -y *.rpm           

等待片刻安裝完成後,啟動Percona Server,啟動指令與啟動MySQL是一樣的:

[root@localhost ~]# systemctl start mysqld           

有正常監聽

3306

端口,代表啟動成功:

[root@localhost ~]# netstat -lntp |grep mysql
tcp6       0      0 :::33060                :::*       LISTEN      21964/mysqld        
tcp6       0      0 :::3306                 :::*       LISTEN      21964/mysqld        
[root@localhost ~]#            

線上安裝

線上安裝比本地安裝更為簡單,隻需要幾條指令即可安裝完成。首先安裝官方提供的

yum

倉庫:

[root@localhost ~]# yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm           

然後啟用該倉庫:

[root@localhost ~]# percona-release setup ps80           

現在就可以直接通過

yum

指令安裝Percona Server了:

[root@localhost ~]# yum install -y percona-server-server           
  • Tips:線上安裝對網絡有一定的要求,否則會非常慢

同樣,等待片刻安裝完成後,啟動Percona Server:

[root@localhost ~]# systemctl start mysqld           

3306

[root@localhost ~]# netstat -lntp |grep mysql
tcp6       0      0 :::33060                :::*       LISTEN      12549/mysqld        
tcp6       0      0 :::3306                 :::*       LISTEN      12549/mysqld
[root@localhost ~]#            

系統設定

禁用Percona Server的開機自啟動:

[root@localhost ~]# systemctl disable mysqld
Removed /etc/systemd/system/multi-user.target.wants/mysqld.service.
Removed /etc/systemd/system/mysql.service.
[root@localhost ~]#            
  • Tips:之是以要禁用開機自啟,是因為在PXC叢集中,當一個節點當機重新開機後,它會随機與一個PXC節點進行資料同步。如果該節點當機時間過長,那麼需要同步的資料量就會比較大。當發生大量資料同步時,PXC叢集會限制其他的寫入操作,直到資料全部同步成功。是以長時間當機之後,正确的做法是不要馬上啟動節點,而是先從其他節點拷貝資料檔案到該節點中,然後再進行啟動。這樣需要同步的資料就會少很多,不會引起長時間的限速。

如果系統有開啟防火牆則需要開放

3306

端口:

[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]#           

修改資料庫配置

修改配置檔案:

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
# 設定字元集
character_set_server=utf8
# 設定監聽的ip
bind-address=0.0.0.0
# 跳過DNS解析
skip-name-resolve           

重新開機Percona Server:

[root@localhost ~]# systemctl restart mysqld           

接着修改root賬戶的預設密碼。我們可以在mysql的日志檔案中找到初始的預設密碼。下圖紅框标注的就是預設密碼:

安裝Percona Server資料庫(in CentOS 8)

然後使用

mysql_secure_installation

指令修改root賬戶的密碼:

[root@localhost ~]# mysql_secure_installation            
[root@localhost ~]# mysql -uroot -p
mysql> create user 'admin'@'%' identified by 'A123456a.';
mysql> grant all privileges on *.* to 'admin'@'%';
mysql> flush privileges;           

繼續閱讀