顯示具有 MariaDB 標籤的文章。 顯示所有文章
顯示具有 MariaDB 標籤的文章。 顯示所有文章

2019年1月3日 星期四

MariaDB 10.1.x 升級到 MariaDB 10.3.x


備份my.cnf

mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.old

編輯Repository

vi /etc/yum.repo.d/Mariadb.repo

baseurl = https://yum.mariadb.org/10.1/centos7-amd64
改成
baseurl = https://yum.mariadb.org/10.3/centos7-amd64

停用MariaDB

systemctl stop mariadb

移除舊的MariaDB

yum remove mariadb-server

更新套件

yum update

安裝新的MariaDB

yum install mariadb-server

啟動MariaDB服務

systemctl start mariadb

檢查Tabe與現有的資料庫版本是否匹配,並嘗試修復所有發現的問題

mysql_upgrade -u root

驗證

mysql –V

還原my.cnf

mv /etc/my.cnf.d/server.cnf.old /etc/my.cnf.d/server.cnf






2018年12月20日 星期四

LibreNMS - 效能篇 - MySQLTuner


MySQLTuner是一個用Perl編寫的腳本,允許快速查看MySQL安裝並進行調整以提高性能和穩定性。 檢索當前配置變量和狀態數據,並以簡短格式顯示,並提供一些基本性能建議。

除了MySQL外,也支援了MariaDB、Percona各版本的資料庫,詳細的資源列表可參閱該專案中的說明


下載MySQLTuner

cd /opt

wget http://mysqltuner.pl/ -O mysqltuner.pl

wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/basic_passwords.txt -O basic_passwords.txt

wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/vulnerabilities.csv -O vulnerabilities.csv

執行MySQLTuner
perl mysqltuner.pl
也可以將mysqltuner變成執行檔
chmod +x mysqltuner.pl
下次就能直接執行下列指令
./mysqltuner.pl
執行完後會給一份建議,再根據建議做調整
2018-12-20_184448
啟動performance schema
performance schema預設是關閉的,所以要透過修改my.cnf開啟
vi /etc/my.cnf
[mysqld]
performance_schema = on
安裝sysschema
MariaDB 10.x預設並沒有安裝sysschema,可透過下列指令安裝
curl "https://codeload.github.com/good-dba/mariadb-sys/zip/master" > mariadb-sys.zip
unzip -l mariadb-sys.zip
unzip mariadb-sys.zip
cd mariadb-sys-master/
mysql -u root -p < ./mariadb_sys_install.sql
systemctl restart mariadb
驗證
執行 perl mysqltuner.pl後,可以看到Performance schema的內容已經從
2018-12-26_122444
變成
2018-12-26_122803

禁用innodb_stats_on_metadata

因為Metadata的統計訊息更新有可能會嚴重影響資料庫伺服器及MySQLTuner的效能,所以需關閉innodb_stats_on_metadata

登入MySQL並執行下列命令關閉

mysql

set global innodb_stats_on_metadata = 0;

備註:有些文件說,my.cnf文件中也要設定,如果因不明原因變慢時,再到my.cnf文件中加入,這裡先依照MySQLTuner文件中的說明,不先加入下列敘述

[mysqld]
innodb_stats_on_metadata = 0

另外可以在my.cnf中再設置下列敘述,如果將條件設定為2會在I/O上有顯著的差異,但如果MySQL崩潰或是伺服器發生故障時,MySQL上的數據會丟失一秒鐘

[mysqld]
innodb_flush_log_at_trx_commit = 2





參考網址:
https://github.com/major/MySQLTuner-perl

2018年12月19日 星期三

在 CentOS 7 上安裝 MariaDB 10


安裝完 CentOS 7後,如果沒有做其他變更,透過yum指令安裝的MariaDB版本會是5.5.60,而MariaDB官方網站顯示,最新的版本已經到10.3.11(2018/12/20)

備註:MariaDB 10開始與MySQL分道揚鑣,所以如果有其他考量,建議還是使用MariaDB 5.5


建立MariaDBRepository

vi /etc/yum.repos.d/MariaDB.repo

輸入下列內容

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
存檔後執行
yum update
安裝MariaDB
yum install mariadb mariadb-server
啟動MariaDB
systemctl start mariadb
systemctl enable mariadb
驗證MariaDB安裝版本
mysql -V