適用OS:CentOS 7
因為 MariaDB 可以說是從 mysql 分枝出來的,
所以許多指令與工具程式可以通用。
phpmyadmin 就是個常用的管理工具,不過 CentOS所維護的
程式庫中的版本實在太舊了,還在 2.11.XX的版號,
因此我們手動安裝 4.2.5版的 phpmyadmin。
先切換工作目錄:
cd /var/www/html/
下載 phpmyadmin (4.2.8 2014.09.04)
wget -O sql.zip 'http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/4.2.8/phpMyAdmin-4.2.8-all-languages.zip?r=http%3A%2F%2Fwww.phpmyadmin.net%2Fhome_page%2Fdownloads.php&ts=1405605567&use_mirror=jaist'
解壓縮
unzip sql.zip
目錄更名
mv phpMyAdmin-4.2.5-all-languages/ sql (這裡用 sql 當範例,也可以照傳統用 phpmyadmin 當目錄名稱)
砍掉下載的壓縮檔
rm -rf sql.zip
PS1:以上是用指令方式執行,我個人比較喜歡用以上這個檔案總管程式來做,範例影片就是以mc來執行。
PS2:wget 那串字串又臭又長,很容易打錯,這裡介紹一個簡單的方式來複製貼上,先用滑鼠選取網頁上的這個字串,
然後點選pietty的視窗,按滑鼠右鍵就會自動將複製的字串貼上,再按下enter就會看到檔案正在抓取。
附註:如果系統沒有 wget與 unzip 工具程式,只要執行 yum install wget unzip 即可。
用瀏覽器開啟 phpmyadmin 網址, http://ip(或domainname)/sql(或你設定的目錄名稱)/
一開始會要求輸入帳密,用前面章節設定 mariadb 資料庫時的root帳號與密碼登入即可看到phpmyadmin的管理畫面,
登入之後的管理畫面:
安裝影片
安全性設定:
以上是最簡單的設定,以 phpmyadmin 內定預設值執行。
如果你想提高系統的安全性也只要修改幾個小地方即可。
cp /var/www/html/sql (或你安裝 phpmyadmin的目錄名稱)/config.sample.inc.php /var/www/html/sql (或你安裝 phpmyadmin的目錄名稱)/config.inc.php
以上是複製一份config.inc.php檔案,這是 phpmyadmin的設定檔。
編輯 config.inc.php
$cfgServers[1]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)?
$cfgServers[1]['user'] = 'root'; // MySQL user
$cfgServers[1]['password'] = 'MySQL的root密碼'; // MySQL password (only needed with 'config' auth)
其中$cfgServers[1]['auth_type'] 可以有config、http、cookie三種設定項。
config是只要這個設定檔的帳號密碼正確,就直接進入了。即使不對也會進入,但無法正確秀出資料庫內容。 <-- 非常不建議!
http則是每次要進去都要進行密碼驗證的動作。若用http的方式$cfgServers[1]['password']可以不用設定,安全性高。<-- 建議用此設定
cookie則是進去過一次後,會做個記錄檔在您的硬碟中,下次要再進去就不用在驗證了(有驗證...只是您可能感覺不出來)$cfgServers[1]['password']也可以不用設定。 <-- 預設值
參考資料
狐的窩
http://mark528.pixnet.net/blog/post/7267524-mysql%E7%AE%A1%E7%90%86%E5%B7%A5%E5%85%B7(phpmyadmin)
認識phpMyAdmin
http://www.js1es.tnc.edu.tw/~phptest/a1-5.php
CentOS 7 快速設定 LAMP(Linux + Apache + MariaDB + PHP)
資料庫的備份與還原:
說到資料庫的備份與還原就是我的痛了,這次升級時沒備份好,
導致資料庫資料全毀。
痛定思痛,嘗試過幾種備份方式後將心得記錄起來,做為借鏡。
我一開始是使用 phpmyadmin 來作為資料庫備份的工具,
結果備份的出來卻倒不回去,google了數種方法都不行,
看來是有些瑕疵。
最後發現,簡單的指令反而效果最好,備份所有資料庫指令,儲存成檔名 mysql.sql:
mysqldump -uroot -p -A --default-character-set=utf8 > mysql.sql
從 mysql.sql 還原資料庫指令:
mysql -uroot -p < mysql.sql
從 mysql.sql 還原個別資料庫 test:
mysql --user=root -p test < /root/mysql.sql
2020.02.20更新:
備份全部資料庫指令:
# mysqldump -u root -p --all-databases > mysql.sql;
備份單一資料庫指令:
#mysqldump -h hostname -u root -p database_name > backup.sql;
參考資料:
ORZ快樂學電腦
http://www.orztw.com/2014/02/mysql-backup.html (失效)
https://code.yidas.com/mysqldump/
留言列表