1. 程式人生 > >Linux Deploy Ubuntu安裝MySQL

Linux Deploy Ubuntu安裝MySQL

一、在Android手機安裝Linux

由於我的手機好像只支援32位的,我選擇安裝ubuntu xenial,(bionic好像沒32為,但是我也安裝過,好像可以執行,就是有時候覺得很慢)

我選擇安裝在外接sd卡,將sd卡分兩個區,其中一個需要設定格式為ext4,並將系統安裝在改分割槽上

補充:架構我是選擇armhf的,下載源應該找支援armhf的源地址,推薦中科大的國內源http://mirrors.ustc.edu.cn/ubuntu-ports,不然之後還需要換源,如果源不支援armhf,apt-get的時候會找不到

按照參考的文章安裝完就好。

二、Ubuntu安裝Mysql

建議在root使用者上操作

sudo su

輸入密碼

(一)安裝mysql

1. sudo apt-get install mysql-server

中間要輸入mysql使用者root的密碼,要記住改密碼,需要輸入兩次

若沒有改過程,建議完全解除安裝重新安裝,請看(二)完全解除安裝mysql

2. apt-get isntall mysql-client

3.  sudo apt-get install libmysqlclient-dev

(二)完全解除安裝mysql

sudo apt-get autoremove --purge mysql-server

sudo apt-get remove mysql-common

whereis mysql
sudo rm -rf /etc/mysql/  /var/lib/mysql (上面whereis mysql找的mysql資料夾)

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P  

sudo apt autoremove

(三)啟動、關閉服務和檢視執行狀態

sudo service mysql start

sudo service mysql stop

sudo service mysql status

(四)mysql啟動錯誤

ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Android使用了一個啟用的特殊核心補丁CONFIG_ANDROID_PARANOID_NETWORK。此修補程式允許網路訪問屬於具有硬編碼ID的特定特殊組的系統使用者。

這是因為Android通常僅在特定應用具有網路許可權時才將使用者(即應用)新增到這些組

說是Android核心已使用CONFIG_ANDROID_PARANOID_NETWORK進行編譯。可以通過將mysql使用者新增到aid_inet和aid_net_raw組來修復它。

解決辦法:

usermod -a -G aid_inet,aid_net_raw mysql

可以ssh連上ubuntu

cat /etc/group

看到

這樣mysql可以正常啟動

補充說明,如果點了linux deploy右上角的“配置”,mysql會在aid_inet,和aid_net_raw使用者組不見了  ,需要重新把mysql新增進去

usermod -a -G aid_inet,aid_net_raw mysql

最後說明,這次在Android安裝linux也是折騰了很久,沒有找到合適的教程,或者各種問題,但是總結了幾篇文章加上自己的摸索,還可以的,老舊手機新用途。