2022-02-02

【Database】Mint Linux 20.3 安裝設定 MySQL 8.0 + phpMyadmin

參考資料 ----

ALTER USER Statement


看似 Ubuntu/Mint 家族並未棄用 MySQL,採 Mariadb/MySQL 並存的方式;偷懶,這次仍是安裝 MySQL,作業系統為 LinuxMint 20.3 MATE, 預設的版本為 MySQL 8.0


新建一台虛擬機


安裝 Guest Additions 讓 虛擬機的螢幕 自動調整客體顯示大小

安裝完成後,設定 "更新管理員" 的 "軟體來源" -- 鏡像站改為國內 國家高速運算中心(https://www.nchc.org.tw/)










安裝 vim(Mint 預設已裝 vi,這適合 80 鍵鍵盤,老人家用不慣 😓)
 
~$  sudo  apt  install  vim
 


暫時關閉防火牆
 
~$  sudo  ufw  disable

# 確認防火牆沒有啟動
~$  sudo  ufw  status
 

安裝 MySQL,Mint 會連帶安裝其他相關的套件
 
~$  sudo  apt  install  mysql-server
 

安裝完成後,MySQL server 應該會自行啟動執行
 
# 查詢 MySQL 狀態
~$  sudo  systemctl  status  mysql

# 啟動 mysql
~$  sudo  systemctl  start  mysql

# 停止 mysql
~$  sudo  systemctl  stop  mysql
 


安裝後,進行安全性設定
 
~$  sudo  mysql_secure_installation
 
問答式設定,依指示回答,以下是老人家的設定,請依自己需求設定

是否要設定密碼強度規則?


密碼強度選擇 -- 2:最強 -- 8 個字碼以上,其中必須 至少 1 個大寫英文 + 至少 1 個小寫英文 + 至少 1 個數字 + 至少 1 個特殊字元


輸入 MySQLroot 密碼(MySQL 也是以 "root" 這個名稱做管理者,不過這裡設定的不是 Linux 的 root 密碼)


是否要剛才設的密碼即刻生效?


是否移除匿名使用者


是否 "不允許" MySQLroot 從遠端登入 MySQL


是否移除 test 資料庫(因為稍後設定 MySQL 時要指定 phpMyAdmin 啟動時預設連線的資料庫,所以先留著,不刪)


重新載入權限資料表

設定完成


設定 MySQL 時區
 
~$  sudo  vim  /etc/mysql/mysql.conf.d/mysqld.cnf

[mydqld]
default-time-zone = '+8:00'

:x 存檔離開
 

剛安裝好 MySQL 時,預設的管理者帳號是 root,所以, 第 1 次以命令形式登入 MySQL,也不需要密碼

 
~$  sudo  mysql

-- SQL 指令沒有大/小寫分別,不過慣例上都會以大寫表示
-- (記得要加 分號 做為命令的結束)
>  ALTER  USER  'root'@'localhost'  IDENTIFIED  WITH  CACHING_SHA2_PASSWORD  BY  '新密碼';

-- 退出,密碼才能生效
> EXIT
 
因為先前的步驟我們指定了密碼強度為 2,所以密碼若不符合這個規則就會出錯

再重新登入就會要求輸入密碼了
 
~$  sudo  mysql  -u  root  -p
# 隨後會要求您輸入密碼
# 參數 -u 是要登入的使用者帳號
# -p 是稍後要輸入密碼


# 另一種登入指令, 但不建議使用, 因為是將密碼以明碼方式顯示
# 注意: -p 跟密碼間沒有空格, 但這麼一來, 您的密碼就顯示在命令列中, 旁人一覽無遺了
~$  sudo  mysql  -u  root  -p密碼


# 登入後, 命令提示字元會變成 >

-- 建立資料庫 
>  CREATE  資料庫名稱;


-- 列出目前 MySQL 已建立的使用者帳號
>  SELECT user FROM mysql.user;


-- 新建一個使用者 admin
>  CREATE USER 'admin'@'localhost' IDENTIFIED  WITH  caching_sha2_password  BY '密碼';
-- 預設的密碼格式為 caching_sha2_password
-- 其他格式有:mysql_native_password, sha256_password


-- 賦予 admin 最高權限
>  GRANT  ALL  PRIVILEGES  ON  * . *  TO  'admin'@'localhost';

>  exit
 


注意:
MySQL 8.0 預設不再支援 MyISAM

MySQL 預設的資料庫管理工具是 MySQL Workbench,不過在 Mint 20.3 執行時,會出現不支援 Mint 的訊息,而且我才玩了一下下就掛了!!


安裝 phpmyadmin
 
~$  sudo  apt  install  phpmyadmin

# Mint 會自動幫您安裝 apache2
 


打開本機的瀏覽器(預設是火狐Firefox),在網址列輸入 http://localhost注意:不是 https

目前,我們還沒有啟用(加密)安全連線,也無法從別的電腦訪問這個內網

phpMyadmin 的網址為
http://localhost/phpmyadmin


沒有留言:

張貼留言