Mariadb 安裝方式:
(1)rpm包;
(a)由OS的發行商提供
(b)程序官方提供
(2)源碼包;
(3)通用二進制格式的程序包;
實驗環境:
安裝系統:CentOS 7
安裝程序:Mariadb
安裝方式:通用二進制
(1)下載程序包,並解壓
# cp /usr/lib/systemd/system/mariadb.service /root //之前安裝過,現在備份下
# yum remove mariadb-server
下載二進制安裝的包,這裏下載的爲 mariadb-5.5.46-linux-x86_64.tar.gz
# ls
# tar xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
# cd /usr/local
# ln -sv mariadb-5.5.46-linux-x86_64/ mysql //這裏不建議創建mysql文件,應該用鏈接的方式
# groupadd -r -g 306 mysql //創建一個系統用戶,安全起見
# cd /usr/local/mysql
# chown -R root:mysql ./*
(2)創建數據庫存放目錄
# mkdir /mydata/data -pv
# chown -R mysql.mysql /mydata/data
(3)爲mysql提供配置文件
mysql默認讀取文件爲 /etc/my.cnf //之前安裝mariadb時,mariadb-libs提供的
[root@localhost mysql]# mkdir /etc/mysql //創建配置文件目錄
[root@localhost mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
[root@localhost mysql]# vim /etc/mysql/my.cnf
datadir = /mydata/data
skip_name_resolve = ON
innodb_file_per_table = ON
//必須在[mysqld]下,添加這三行
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld //複製啓動mysql的文件,並確保其有執行權限
[root@localhost mysql]# chkconfig - -add mysqld //注意是 - -
(4)初始化mysql數據庫
初始化原因: 上面的啓動會有問題,數據會放在/var/lib/mysql/,而不是/mydata/data下。因爲我們創建的配置文件/etc/mysql/my.cnf 會和系統之前的/etc/my.cnf有衝突,需要把/etc/my.cnf存放到別處。
初始化過程:
[root@localhost mysql]# rm /mydata/data/* -f //刪除之前產生的錯誤日誌信息等
[root@localhost mysql]# scripts/mysql_install_db - -user=mysql - -datadir=/mydata/data //必須在/usr/local/mysql目錄下執行初始化操作
此時在啓動mysql,將會發現數據庫啓動成功 。
附加:查看當前mysql的幫助信息,發現mysql的配置文件讀取路徑和之前自己理解有出入,需要注意下即可。
至此 ,通用二進制安裝mariadb過程結束。個人安裝過程中出現的問題,致使mysql一直啓動失敗總結:
1、修改配置文件時,skip_name_resolve = ON 中把resolve寫成reslove
2、[root@localhost mysql]# scripts/mysql_install_db - -user=mysql - -datadir=/mydata/data 只寫了一個- 。
問題很低級,不過最終查錯,感受很深,以後不會再發生這樣的錯誤,編寫任何文件都應該仔細查看及覈對。