在Freenas上安裝 MySql

本文章是參考 Installing MySQL And phpMyAdmin On FreeNAS 所載的安裝程序與步驟, 加上一點自己實作所遇到困難與解法.

軟體下載:
FreeNas 版本 0.7.2
phpMyAdmin 版本 3.3.9.2
WordPress 正體中文 版本 3.1

安裝 Freenas 請參考前作 , 雖然版本有點不同, 但是介面幾乎一樣, 安裝方式也沒有太大的不一樣, 請依照硬體規格自行劃分硬碟分割區與 Mount Point.

安裝完 Freenas 後, 建議把原來的管理介面調整成其他的 Port no, 把 80 port 留給 wordpress 使用, 路徑 System – General – WebGUI, 把 Port 改成自己想要的數字

Change Port number for free
Change Port number for free

接下來啟用 WebServer, 路徑 Servers – WebServer, 這邊把 80 port 給網站使用會問題會比較少, 同時如果要把 Freenas 直接接到 Internet 上面去, 修改的地方也會少一點, Document Root 就是放網站內容的地方, 無論你的網站資料多寡, 建議不要放置在系統區內, 因為 Freenas default 只會建立個幾百MB 的系統空間, 如果你有很多圖片或其他檔案, 很容易把系統區撐爆導致整個系統無法運行.

建議使用另一個Partition, 通常會掛在 mnt 底下.

Change FreeNas WebServer document root path
Change FreeNas WebServer document root path

接下來先去建立使用者群組與使用者, 這個使用者是要給 Mysql 使用, 記得要先建立群組, 再去建立使用者, 同時要給這個使用者有登錄的 Shell, 路徑 Access – User – Group.

群組名稱與使用者名稱都定義為 mysql, 密碼請自取, Primary Group 請一定要選 mysql

Create mysql user on Freenas
Create mysql user on Freenas

接著打開 ssh 的服務讓遠端可以直接連線操作, 因為我習慣開兩個以上的 Terminal 互相交錯使傭, 在 Freenas 主機上選 6 進入 shell 也可以達到相同的目的, 但未來還有機會使用再增添一些額外的服務, 還是建議先開立起來吧.

啟用路徑 Service – SSH, 我這邊開放式直接允許 root 登入, 依照正常操作規範的話, 這個選項還是建議不要開放喔.

Allow root login via SSH
Allow root login via SSH

接下來是參考網頁上的說明來安裝, 但我系統 Partition 於安裝時就開立 2G 的空間, 所以我是把 DB 直接放置系統區內, 防止不當的操作去把檔案破壞掉, 以下的示範將會跳過幾個作 Link 的步驟; 以下都是以 root 帳號登入.

Step1    

# mkdir /var/db/mysql
建立 Mysql 檔案的存放位置

Step2    

# chown –R mysql:mysql /var/db/mysql
把該路徑的擁有者設定成 mysql 這個 User / Group

Step3    

# chmod 777 /tmp
# chmod 777 /var/tmp
設定所有的人都有權限使用以上兩個路徑, 因為 Mysql 運行時會在 /tmp 內產生一個 mysql.sock 的檔案.

Step4   

# pkg_add –r mysql50-server
安裝 Mysql 5.0 的最新版本, 記得網路要接通喔

Step5   

# su – mysql
切換到 Mysql 使用者, 讓這個使用者去安裝 Mysql 的啟動 db

Step6

# /usr/local/bin/mysql_install_db
執行 mysql 啟動 db, 用 root 去做會導致權限異常, 讓 mysql 無法啟動, 如果 Step5 忘了改 User, 可以重新執行以上指令.

Step7   

# cd /usr/local ; /usr/local/bin/mysqld_safe &
啟動 mysql, 執行以上指令看看是否可以正常的啟動 mysql, 檢查一下 /tmp 內有沒有 mysql.sock 這個檔案存在.

Step8

# /usr/local/bin/mysqladmin -u root password ‘new-password’
# /usr/local/bin/mysqladmin -u root -h freenas.local password ‘new-password’
變更 mysql 密碼, 置換掉 『new-password’ 為你所要指定的密碼.

Step9

# vi /etc/rc.conf
Add mysql_enable=」YES」 on the bottom of file
編輯 /etc/rc.conf 在最後一行加上mysql_enable=”YES”, 讓每次 Freenas 啟動都會自動帶起 mysql

Step10

# reboot
重新開機, 確認一下設定

Step11

# pkg_add -r gd
# pkg_add -r php5
# pkg_add -r php5-extensions
# pkg_add -r php5-xmlrpc
# pkg_add -r php5-gettext
# pkg_add -r php5-mcrypt
# pkg_add -r php5-mbstring
# pkg_add -r php5-gd
# pkg_add -r xmlstarlet
# pkg_add -r php5-mysql
安裝其他額外的相關套件, 此時 Freenas 的 GUI 介面會突然不能使用, 別擔心下個步驟就可以恢復回來

Step12

# mv /usr/local/bin/php /usr/local/bin/php-cli
# cp /usr/local/bin/php-cgi /usr/local/bin/php
變更一些路徑讓整個 PHP 運作正常起來

Step13

# reboot
重新啟動確認整個服務是否正常, 以上 MySql 就已經安裝完畢.

2 thoughts on “在Freenas上安裝 MySql

  1. 謝謝你的教學,不然照其他人的教學都會出一些很難搞定的錯誤說!….

    雖然目前phpmyadmin仍會出現wrong permission的錯誤…..

    所以後來乾脆直接用指令控制MySQL比較快……感謝!

    1. Woozc,

      謝謝您的回覆, 其實 phpMyAdmin 用到的機會不多, 裝起來也僅僅是拿來開薪資料庫及帳號等工作而已, 網路上面所找到的資源其實已經足夠使用了. ^_^

      ps. Wrong Permission 是屬於 httpd 的錯誤嗎?

      Mark

發表迴響