MySQL 安裝難?開玩笑!這份攻略讓你五分鐘搞定
- 適用人群:Linux小白、Ubuntu初學者、第一次接觸MySQL的同學
 - 系統(tǒng)版本:Ubuntu 20.04 LTS
 - 預計用時:5-10分鐘
 
你是不是也遇到過這樣的困擾:看著網(wǎng)上各種MySQL安裝教程,要么步驟不全,要么版本太老,要么就是一堆專業(yè)術(shù)語看得云里霧里?
別慌!今天這篇教程專門為小白量身定制,保證你跟著做一遍就能成功!我們用最簡單的APT包管理器來安裝,就像在手機上裝APP一樣簡單。

一、安裝前的準備工作
第一步:確認你的Ubuntu版本
首先,讓我們確認一下系統(tǒng)版本。打開終端(按Ctrl + Alt + T),輸入:
lsb_release -a你應該看到類似這樣的輸出:
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.x LTS
Release:        20.04
Codename:       focal如果看到20.04,那就對了!
第二步:更新系統(tǒng)包列表
這一步很重要,就像給你的"軟件商店"刷新一下最新的軟件列表:
sudo apt update小貼士:輸入這個命令后,系統(tǒng)可能會要求你輸入密碼,這是正常的。輸入時屏幕上不會顯示密碼字符,直接輸入完按回車就行。
二、開始安裝MySQL
第三步:安裝MySQL服務器
現(xiàn)在是關(guān)鍵時刻!輸入這個"魔法咒語":
sudo apt install mysql-server系統(tǒng)會問你是否繼續(xù)安裝(Do you want to continue? [Y/n]),直接按回車或者輸入Y然后回車。
這里會發(fā)生什么?
- 系統(tǒng)開始下載MySQL相關(guān)文件
 - 自動安裝和配置
 - 你會看到一堆滾動的文字,這是正常的,耐心等待
 
第四步:檢查MySQL是否安裝成功
安裝完成后,讓我們檢查一下MySQL服務是否正在運行:
sudo systemctl status mysql如果看到綠色的active (running)字樣,恭喜你,安裝成功了!
如果沒有自動啟動,可以手動啟動:
sudo systemctl start mysql第四步補充:安裝MySQL開發(fā)庫(重要)
如果你后續(xù)需要開發(fā)MySQL相關(guān)的程序(比如用C/C++、Python等語言連接MySQL),建議現(xiàn)在就安裝MySQL的開發(fā)庫:
sudo apt install libmysqlclient-dev -y這個庫的作用:
- 提供MySQL的C語言頭文件和庫文件
 - 支持多種編程語言的MySQL連接器編譯
 - C/C++程序連接MySQL必備
 
什么時候需要:
- 編寫C/C++程序連接MySQL
 - 安裝一些Python包(如mysqlclient)時需要
 - 編譯其他需要MySQL支持的軟件
 
安裝很快,現(xiàn)在裝上以后就不用擔心了,避免后續(xù)開發(fā)時再去找這個依賴。
三、MySQL安全配置(重要!)
第五步:運行安全配置腳本
MySQL安裝后默認設(shè)置比較寬松,我們需要加強一下安全性。MySQL 8.0的安全配置腳本運行起來很簡單:
sudo mysql_secure_installation運行過程說明:
- MySQL 8.0會自動檢測當前的認證方式
 - 如果root用戶使用auth_socket認證,腳本會正常運行
 - 直接按回車通常不會有問題
 
這個命令會啟動一個交互式的配置過程,跟著我的步驟來:
配置過程詳解:
① 是否安裝密碼驗證插件?
Would you like to setup VALIDATE PASSWORD plugin? (Press y|Y for Yes, any other key for No):- 新手建議:輸入n(不安裝)
 - 為什么:這個插件會強制要求復雜密碼,對新手來說可能比較麻煩
 
② 刪除匿名用戶?
Remove anonymous users? (Press y|Y for Yes, any other key for No):建議:輸入y(刪除匿名用戶,提高安全性)
③ 禁止root遠程登錄?
Disallow root login remotely? (Press y|Y for Yes, any other key for No):建議:輸入y(禁止遠程登錄,提高安全性)
④ 刪除test數(shù)據(jù)庫?
Remove test database and access to it? (Press y|Y for Yes, any other key for No):建議:輸入y(刪除測試數(shù)據(jù)庫)
⑤ 重新加載權(quán)限表?
Reload privilege tables now? (Press y|Y for Yes, any other key for No):建議:輸入y(立即生效配置)
四、測試MySQL安裝
第六步:登錄MySQL并配置root用戶認證方式
(1) 首次登錄MySQL
MySQL 8.0安裝后,root用戶默認使用auth_socket認證方式,這意味著你可以直接用sudo登錄,無需密碼:
sudo mysql成功的標志:你會看到類似這樣的歡迎信息:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.xx-Ubuntu
mysql>(2) 查看當前root用戶認證方式
在MySQL命令行中,輸入以下命令查看root用戶的認證信息:
SELECT user, host, plugin, authentication_string FROM mysql.user WHERE user='root';你會看到類似這樣的輸出:
+------+-----------+-------------+-----------------------+
| user | host      | plugin      | authentication_string |
+------+-----------+-------------+-----------------------+
| root | localhost | auth_socket |                       |
+------+-----------+-------------+-----------------------+解釋:
- plugin顯示為auth_socket,表示使用socket認證
 - authentication_string為空,表示沒有設(shè)置密碼
 
(3) 修改root用戶認證方式(推薦)
為了方便日常使用和提高安全性,建議將root用戶的認證方式改為傳統(tǒng)的密碼認證(mysql_native_password):
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';重要說明:
- 將your_password替換為你想要設(shè)置的密碼
 - 密碼要足夠強壯,建議包含大小寫字母、數(shù)字和特殊字符
 
(4) 驗證修改結(jié)果
再次查看root用戶的認證信息:
SELECT user, host, plugin, authentication_string FROM mysql.user WHERE user='root';現(xiàn)在你應該看到:
+------+-----------+-----------------------+-------------------------------------------+
| user | host      | plugin                | authentication_string                     |
+------+-----------+-----------------------+-------------------------------------------+
| root | localhost | mysql_native_password | *加密后的密碼字符串*                      |
+------+-----------+-----------------------+-------------------------------------------+(5) 退出并重新登錄測試
退出MySQL:
EXIT;現(xiàn)在用新的密碼登錄:
mysql -u root -p系統(tǒng)會提示輸入密碼,輸入你剛才設(shè)置的密碼。
為什么要做這個修改?
- 方便性:可以直接用密碼登錄,不需要sudo權(quán)限
 - 兼容性:某些應用程序可能不支持auth_socket認證
 - 安全性:明確的密碼認證更符合數(shù)據(jù)庫安全規(guī)范
 
看到mysql>這個提示符,說明你已經(jīng)成功進入MySQL了!
第七步:創(chuàng)建普通用戶(推薦)
在實際項目中,我們通常不直接使用root用戶,而是創(chuàng)建專門的普通用戶。這是一個好習慣!
(1) 創(chuàng)建新用戶
在MySQL命令行中執(zhí)行:
-- 創(chuàng)建新用戶(將username和password替換為你想要的用戶名和密碼)
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';舉個例子:
-- 創(chuàng)建一個名為myapp的用戶,密碼是myapp123
CREATE USER 'myapp'@'localhost' IDENTIFIED BY 'myapp123';(2) 給用戶授權(quán)
新創(chuàng)建的用戶默認沒有任何權(quán)限,我們需要給它分配權(quán)限:
-- 給用戶授予某個數(shù)據(jù)庫的所有權(quán)限
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
-- 如果要給用戶授予所有數(shù)據(jù)庫的權(quán)限(謹慎使用)
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';實際例子:
-- 先創(chuàng)建一個測試數(shù)據(jù)庫
CREATE DATABASE testdb;
-- 給myapp用戶授予testdb數(shù)據(jù)庫的所有權(quán)限
GRANT ALL PRIVILEGES ON testdb.* TO 'myapp'@'localhost';
-- 刷新權(quán)限
FLUSH PRIVILEGES;(3) 測試新用戶
退出當前連接:
EXIT;用新用戶登錄:
mysql -u myapp -p輸入密碼后,試試查看數(shù)據(jù)庫:
SHOW DATABASES;你應該能看到testdb數(shù)據(jù)庫。
第八步:簡單測試
在MySQL命令行中,試試這些基本命令:
-- 查看所有數(shù)據(jù)庫
SHOW DATABASES;
-- 查看MySQL版本
SELECT VERSION();
-- 退出MySQL
EXIT;注意:每個SQL命令后面要加分號;
五、設(shè)置MySQL開機自啟動
讓MySQL在每次開機時自動啟動:
sudo systemctl enable mysql檢查是否設(shè)置成功:
sudo systemctl is-enabled mysql如果返回enabled,就成功了!
六、常用MySQL管理命令
作為小白,記住這幾個命令就夠用了:
# 啟動MySQL服務
sudo systemctl start mysql
# 停止MySQL服務
sudo systemctl stop mysql
# 重啟MySQL服務
sudo systemctl restart mysql
# 查看MySQL服務狀態(tài)
sudo systemctl status mysql
# 連接MySQL
mysql -u root -p七、可能遇到的問題及解決方案
問題1:忘記root密碼怎么辦?
情況1:如果你使用的是默認的auth_socket認證 可以直接用sudo登錄:
sudo mysql然后重新設(shè)置密碼:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
EXIT;情況2:如果你已經(jīng)設(shè)置了mysql_native_password認證但忘記密碼 可以這樣重置:
# 停止MySQL服務
sudo systemctl stop mysql
# 安全模式啟動MySQL
sudo mysqld_safe --skip-grant-tables &
# 無密碼登錄
mysql -u root
# 在MySQL中執(zhí)行
USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
FLUSH PRIVILEGES;
EXIT;
# 重啟MySQL
sudo systemctl restart mysql問題2:無法連接MySQL
如果遇到連接問題,檢查服務是否運行:
sudo systemctl status mysql如果服務沒運行,啟動它:
sudo systemctl start mysql問題3:端口被占用
MySQL默認使用3306端口,檢查端口是否被占用:
sudo netstat -tlnp | grep 3306八、給初學者的小建議
- 記住你的密碼:MySQL的root密碼一定要記住,建議寫在安全的地方
 - 定期備份:養(yǎng)成備份數(shù)據(jù)庫的好習慣
 - 學習基礎(chǔ)SQL:安裝只是第一步,學會基本的SQL語句才能真正使用MySQL
 - 使用圖形化工具:推薦安裝Navicat、DBeaver或MySQL Workbench,圖形界面更友好
 
九、總結(jié)
恭喜你!如果按照以上步驟操作,你現(xiàn)在已經(jīng):
- 成功在Ubuntu 20.04上安裝了MySQL
 - 完成了基本的安全配置
 - 學會了基本的MySQL管理命令
 - 知道了常見問題的解決方法
 
MySQL已經(jīng)準備好為你的項目服務了!接下來你可以開始學習SQL語句,創(chuàng)建數(shù)據(jù)庫和表,開始你的數(shù)據(jù)庫之旅。















 
 
 






 
 
 
 