上篇文章給大家介紹了 Centos 使用YUM安裝MariaDB,相關資料可以參考下此文。
說明: 首先必須能鏈接外網. 如果不能直接訪問,那也可以設置代理,請參考: 在內網機器上設置yum代理
使用 yum 的權限要求是 root 用戶,如果你不是,那麼可以需要 在 shell命令之前加上 sudo, 或者 su root 切換到 super 管理員進行操作. 並可能需要輸入密碼.
1. 添加 yum 數據源;
建議命名為 MariaDB.repo 類似的名字:
復制代碼 代碼如下:
cd /etc/yum.repos.d/
vim /etc/yum.repos.d/MariaDB.repo
然後,寫入文件內容:(建議使用 10.0)
復制代碼 代碼如下:
# MariaDB 10.0 CentOS repository list - created 2015-08-12 10:59 UTC
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
該文件的內容是參考官網,並從官網上生成的,設置安裝源倉庫的 具體的地址為:
https://downloads.mariadb.org/mariadb/repositories/
選擇好操作系統版本之後既可以查看,其他操作系統的安裝源也可以在此處查看並設置。
如果服務器不支持https協議,或者gpgkey 保錯,確保沒問題的話,可以將 gpgcheck=1 修改為 gpgcheck=0,則不進行校驗.
2. 安裝數據庫
復制代碼 代碼如下:
# yum remove MariaDB-server MariaDB-client
yum -y install MariaDB-server MariaDB-client
如果要刪除舊的數據庫可以使用remove, 參數 -y 是確認,不用提示。此處,安裝的是服務器和客戶端,一般來說安裝這兩個就可以了。
3. 啟動數據庫
如果不用進行其他的操作,則現在就可以直接啟動數據庫,並進行測試了。
復制代碼 代碼如下:
# 查看mysql狀態;關閉數據庫
# service mysql status
# service mysql stop
# 啟動數據庫
service mysql start
4. 修改root密碼
# 修改root密碼
mysqladmin -u root password 'root'
因為安裝好以後的root密碼是空,所以需要設置; 如果是測試服務器,那麼你可以直接使用root,不重要的密碼很多時候可以設置為和用戶名一致,以免忘記了又想不起來。
如果是重要的服務器,請使用復雜密碼,例如郵箱,各種自由組合的規則的字符等。
5. 登錄數據庫
mysql -u root -p
如果是本機,那可以直接使用上面的命令登錄,當然,需要輸入密碼. 如果是其他機器,那麼可能需要如下的形式:
復制代碼 代碼如下:
mysql -h 127.0.0.1 -P 3306 -u root -p
6. 簡單SQL測試
> -- 查看MySQL的狀態 status; -- 顯示支持的引擎 show engines; -- 顯示所有數據庫 show databases; -- 切換數據庫上下文,即設置當前會話的默認數據庫 use test; -- 顯示本數據庫所有的表 show tables; -- 創建一個表 CREATE TABLE t_test ( id int(11) UNSIGNED NOT NULL AUTO_INCREMENT, userId char(36), lastLoginTime timestamp, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 插入測試數據 insert into t_test(userId) values ('admin') ,('haha') ; -- 簡單查詢 select * from t_test; select id,userId from t_test where userId='admin' ;
7. 修改數據存放目錄
mysql, MariaDB 的默認數據存放在 /var/lib/mysql/ 目錄下,如果不想放到此處,或者是想要程序和數據分離,或者是磁盤原因,需要切換到其他路徑,則可以通過修改 datadir系統變量來達成目的.
# 停止數據庫
service mysql stop
# 創建目錄,假設沒有的話
mkdir /usr/local/ieternal/mysql_data
# 拷貝默認數據庫到新的位置
# -a 命令是將文件屬性一起拷貝,否則各種問題
cp -a /var/lib/mysql /usr/local/ieternal/mysql_data
# 備份原來的數據
cp -a /etc/my.cnf /etc/my.cnf_original
# 其實查看 /etc/my.cnf 文件可以發現
# MariaDB 的此文件之中只有一個包含語句
# 所以需要修改的配置文件為 /etc/my.cnf.d/server.cnf
cp /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf_original
vim /etc/my.cnf.d/server.cnf
然後 按 i 進入編輯模式,可以插入相關內容.使用鍵盤的上下左右鍵可以移動光標, 編輯完成以後,按 ESC 退出編輯模式(進入命令模式), 然後輸入命令:wq 保存並退出
# 在文件的 mysqld 節下添加內容
[mysqld] datadir=/usr/local/ieternal/mysql_data/mysql socket=/var/lib/mysql/mysql.sock #default-character-set=utf8 character_set_server=utf8 slow_query_log=on slow_query_log_file=/usr/local/ieternal/mysql_data/slow_query_log.log long_query_time=2
其中,也只有 datadir 和 socket 比較重要; 而 default-character-set 是 mysql 自己認識的,而 mariadb5.5 就不認識,相當於變成了 character_set_server
7.1 創建慢查詢日志文件
既然上面指定了慢查詢日志文件,我後來看了下MariaDB的err日志,發現MariaDB不會自己創建該文件,所以我們需要自己創建,並修改相應的文件權限(比如 mysql 采用 mysql用戶,可能我們使用 root用戶創建的文件,此時要求慢查詢日志文件對mysql用戶可讀可寫就行。)
復制代碼 代碼如下:
touch /usr/local/ieternal/mysql_data/slow_query_log.log
chmod 666 /usr/local/ieternal/mysql_data/slow_query_log.log
然後重新啟動MySQL.
復制代碼 代碼如下:
service mysql start