Blast2go安裝之中間站:MySQL安裝及修改數據保存路徑
審校:大俞先生
書接上一回,本篇是 #在Linux系統上安裝配置生物序列分析軟體Blast2go系列# 的第二部分。MySQL是Blast2go本地化所依賴的資料庫。本篇主要介紹它的安裝配置、存儲位置修改及新版中低級密碼設置不允許的解決方法。
Blast2go的安裝配置、導入配套數據到MySQL以及版本不兼容的解決方法請見下回分解。
車友請跳到需要部分閱讀,老司機請跳車。
我的系統:Ubuntu17.10.1 (64 bit)(kernel 4.13)
MySQL 安裝配置
以下操作步驟基於v.5.7,與較舊版本配置文件及部分命令差異較大。另基於用戶有root許可權,沒有的話請直接跳到第二部分路徑修改中、配置文件修改的那段黑體字,然後上網找篇沒有root許可權的安裝MySQL方法配合服用。這裡推薦Wei Shen的筆記(無root許可權的安裝MySQL):
1. 安裝MySQL
安裝非常簡單,兩行命令就可以解決。命令行輸入:
安裝的版本是v.5.7。安裝完成後按提示設置密碼:
命令行輸入:
如果希望使用MySQL圖形界面,再安裝mysql-workbench:
然後win鍵打開搜索,搜「mysql」就可以打開圖形界面了。
界面很友好,可用圖形化操作也可以寫代碼。畫風是這樣的:
2. 修改MySQL數據保存路徑(需要root許可權)
存儲的MySQL數據非常大,我系統所在的固態硬碟只有240G,這就需要將數據儲存在外加的機械硬碟中。由於MySQL版本更新,配置的文件也有變化,以前很多教程不適用於現在的版本。在v.5.7中設置數據保存路徑操作如下。
先停止MySQL,命令行輸入:
在想要存放MySQL數據的位置新建一個文件夾mysqldata(名字隨意)。
以下命令需要root許可權,進入root用戶更方便。
輸入:
輸入密碼後進入root模式。
打開目錄後輸入:
查看許可權。
可以看到文件許可權屬於mysql用戶和mysql組,所以遷移數據的目的文件也需要被賦予相同許可權。命令行輸入:
此處
為剛剛新建的mysqldata文件夾的位置。
上面mysql文件的許可權為700(只有所有者有讀寫和執行的許可權),所以將遷移目標文件(新建的mysqldata)也賦予相同或更高的許可權(比如777,即每人都有讀寫和執行的許可權),命令行輸入:
然後用cp命令將/var/lib/mysql下的所有內容複製到mysqldata目錄。-a參數用於保留文件屬性、鏈接。這一步建議使用cp而不是mv(移動)命令,等確定能運行後再刪除,因為這個文件如果出問題可能導致需要MySQL重裝(如需要重裝方法見此段第三部分)。
複製和改許可權這兩部分順序可換。如果更新資料庫內容或移動位置後不能啟動MySQL,出現「can"t connect to mysql server through socket…」報錯也可嘗試重新執行賦權那2步操作解決。
接下來還需要修改MySQL的配置文件,為了避免中文路徑的影響,新建/media/hd1文件夾用於掛載機械硬碟。路徑不存在此問題可忽略下面3張截圖了。
接下來這一步是與其它版本修改差別最大的地方,新版的MySQL配置的文件變化了。網上很多說在/etc/mysql/my.cnf中修改,但進去後並沒有匹配的欄位。v.5.7要修改的第一處配在/etc/mysql/mysql.cnf.d/mysql.cnf中。到後面很多功能的配置都會用到這個文件,按網上攻略找不到時不妨試試從這裡面找。
命令行輸入:
打開後搜索欄位「datadir」,加#注釋掉原來的路徑,補mysqldata所在路徑。
還有一處需要修改的配置在/etc/apparmor.d/usr.sbin.mysqld(使用gedit命令,方法同上)中,搜索欄位「datadir」,注釋掉如圖兩行,補上:
至此,所有需要修改的部分都完成了。
Apparmor是Ubuntu中的安全控制項。我們重啟MySQL前需要先將它重啟:
重啟MySQL:
所有步驟完成了。試試登錄吧:
後輸入密碼。
現在可以放心刪掉原來/var/lib/mysql/里的文件了。
3. 卸載MySQL
如果需要重裝MySQL需要先把原來的刪除乾淨("version"里填對應的版本):
可能有多餘的命令,只是為了刪的徹底些。
網上還有說法包含命令「sudo apt-get remove apparmor」,別聽他的,這條命令可能導致重裝系統才能解決的問題。也別問我怎麼知道的。
4. 密碼限制參數修改
較新版本的MySQL中安裝了validate_password插件,如果在安裝後創建其它新用戶時密碼太簡單,會報錯並不允許創建。出現這個問題時可以修改以下參數。進入MySQL,輸入:
完成。修改會在重新登入MySQL後更新。
"quit"退出後重新進入MySQL。輸入:
匹配查找相關參數發現已經全被改過來了。
Blast2go的安裝配置與配套數據導入MySQL配置歡迎關注後續文章。其它有關MySQL內容以後可能放在其它系列中。
上車請刷卡:》》》
TAG:老子我知道 |