修改 MariaDB 預設儲存目錄 三年前寫了關於修改 MySQL 預設存放資料夾的記錄「 在 uBuntu 中移動 MySQL 的資料存放位置 」,經過這幾年的改變和 Oracle 買下昇陽後 MySQL 的轉變,目前已經習慣使用 MariaDB(原 MySQL 創辦人)作為 LAMP 中的 M 。再記錄 MariaDB 中預設儲存目錄如何修改。 OS: UBuntu 16.04.3 Server x64 DB: MariaDB 10.2.12 方法上和先前 MySQL 設定大同小異 停止 MariaDB 服務 $ sudo systemctl stop mariadb 建立新的存放目錄位置(如: /db/mariadb ) $ sudo madir /db/mariadb $ sudo chown mysql.mysql /db/mariadb 複製目前目錄下的內容至新的存放目錄位置 $ sudo cp -rp /var/lib/mysql/* /db/mariadb 修改 MariaDB 設定檔,Ubuntu 位置為 /etc/mysql/my.cnf $ sudo vim /etc/mysql/my.cnf 將 [mysqld] 下的 datadir 修改為新的位置 [mysqld] ... datadir = /db/mariadb ... 重新啟動 MariaDB $ sudo systemctl start mariadb
如何更改 Docker image 預設安裝資料夾 一開始規劃 ubuntu partition 的時候, /var 雖然有獨立成一個新的 partition,但因為有特別安排了一個 partition 專門給 MariaDB(MySQL)使用,所以 /var 也就沒有給的特別大。這一陣子開始使用 docker 作為開發環境,docker 的 image 預設是儲存於 /var/lib/docker 路徑下,會佔用 /var 很多空間,希望能將預設的路徑移到別的 partition。 在不同版本的 Linux 下設定方式會有些不同,在 Stackoverflow 有許多討論,另外在 Travis 這篇文章 中也有直接提供一個 shell script 可以修改 ubuntu 16.04 下的預設路徑。 在 Docker doc 中發現官方的設定,相對簡單,在自己嘗試後可以適用,分享我在 ubuntu 16.04 下的設定方式,設定後不用重新開機即可套用。 OS:Ubuntu 16.04 .3 LTS (Xenial Xerus) Docker Version : 17.09 .0 -ce Docker daemon 設定檔 Docker 官方建議的方式為在 daemon.json 檔案中設定 daemon flags, daemon.json 在 Linux 中預設位置在 /etc/docker/ 。在 ubuntu 16.04 中預設這個檔案不存在,可以手動新增這個檔案。 $ sudo vim /etc/docker/daemon.json 在檔案中加上下面的內容,graph 為執行與存放的路徑位置: { " graph ": "/mnt/docker-data" , " storage-driver ": "overlay" } 更新修改內容與重新啟動 Docker 更新套用修改內容: $ sudo systemctl daemon-reload 重新啟動 Docker: $ sudo systemctl restart docker 重新啟動後,在 graph 指