在Ubuntu 24.04上安裝MySQL 8.0有多種方法,以下是幾種常見的安裝方式:
方法一:使用APT官方倉庫安裝(推薦)
1. 更新軟件包索引
sudo apt update
2. 安裝MySQL服務器
sudo apt install mysql-server
3. 啓動MySQL服務
sudo systemctl start mysql
sudo systemctl enable mysql
4. 檢查MySQL狀態
sudo systemctl status mysql
方法二:使用MySQL官方倉庫安裝
略
安全配置
運行安全安裝腳本
sudo mysql_secure_installation
按照提示進行安全配置:
- 設置驗證密碼策略 Y
- 設置root密碼
- 移除匿名用户 Y
- 禁止遠程root登錄 Y
- 移除測試數據庫 Y
- 重新加載權限表 Y
基本操作命令
啓動/停止/重啓MySQL
sudo systemctl start mysql # 啓動
sudo systemctl stop mysql # 停止
sudo systemctl restart mysql # 重啓
sudo systemctl status mysql # 查看狀態
連接MySQL
sudo mysql -u root -p
root默認密碼為空,沒有密碼
配置遠程訪問(可選)
1. 修改MySQL配置
編輯配置文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到 bind-address 並修改:
text
bind-address = 0.0.0.0
2. 創建遠程訪問用户
CREATE USER 'pplsunny'@'%' IDENTIFIED BY '1qazxsw2';
GRANT ALL PRIVILEGES ON *.* TO 'pplsunny'@'%';
FLUSH PRIVILEGES;
3. 重啓MySQL服務
sudo systemctl restart mysql
常見問題解決
忘記root密碼
- 停止MySQL服務:
sudo systemctl stop mysql
- 跳過權限檢查啓動:
sudo mysqld_safe --skip-grant-tables &
- 連接並重置密碼:
USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
FLUSH PRIVILEGES;
EXIT;
- 重啓MySQL服務:
bash
sudo systemctl restart mysql
查看MySQL版本
bash
mysql --version
驗證安裝
安裝完成後,可以通過以下命令驗證:
bash
sudo mysql -u root -p -e "SELECT VERSION();"
這樣就在Ubuntu 24.04上成功安裝了MySQL 8.0。建議使用第一種方法,因為它最簡單且由Ubuntu官方維護。
在Ubuntu 24.04上設置MySQL root密碼有多種方法,以下是詳細的步驟:
方法一:使用mysql_secure_installation(推薦)
1. 運行安全配置腳本
bash
sudo mysql_secure_installation
2. 按照提示操作
text
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No:
- 選擇密碼驗證策略:建議選擇
Y來啓用密碼強度驗證 - 選擇密碼級別:
- 0 = 低強度
- 1 = 中等強度
- 2 = 高強度
Please set the password for root here.
New password: [輸入新密碼]
Re-enter new password: [再次輸入密碼]
- 輸入並確認root密碼
- 移除匿名用户:選擇
Y - 禁止遠程root登錄:選擇
Y - 移除test數據庫:選擇
Y - 重新加載權限表:選擇
Y
方法二:直接使用MySQL命令行
1. 以root身份登錄MySQL(初始無密碼)
sudo mysql
2. 在MySQL中設置root密碼
sql
-- 選擇mysql數據庫
USE mysql;
-- 設置root用户密碼(替換'your_password'為實際密碼)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_strong_password';
-- 刷新權限
FLUSH PRIVILEGES;
-- 退出
EXIT;
方法三:如果已經知道當前密碼
1. 登錄MySQL
bash
mysql -u root -p
2. 修改密碼
sql
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_strong_password';
FLUSH PRIVILEGES;
EXIT;
方法四:使用mysqladmin
bash
sudo mysqladmin -u root password "new_strong_password"
或者如果已經有密碼需要修改:
bash
sudo mysqladmin -u root -p'old_password' password "new_strong_password"
驗證密碼設置
測試新密碼登錄
bash
mysql -u root -p
輸入新設置的密碼,應該能成功登錄。
檢查用户認證信息
sql
SELECT user, host, authentication_string, plugin FROM mysql.user WHERE user = 'root';
密碼策略配置(可選)
查看當前密碼策略
sql
SHOW VARIABLES LIKE 'validate_password%';
修改密碼策略(如果需要)
sql
-- 設置密碼長度要求
SET GLOBAL validate_password.length = 8;
-- 設置密碼策略級別(0=LOW, 1=MEDIUM, 2=STRONG)
SET GLOBAL validate_password.policy = 1;
-- 使配置永久生效
SET PERSIST validate_password.policy = 1;
常見問題解決
如果無法登錄
1. 停止MySQL服務:
bash
sudo systemctl stop mysql
1. 跳過權限檢查啓動:
bash
sudo mysqld_safe --skip-grant-tables &
1. 重新設置密碼:
sql
USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
FLUSH PRIVILEGES;
EXIT;
1. 重啓MySQL服務:
bash
sudo systemctl restart mysql
密碼強度要求錯誤
如果遇到密碼不符合策略要求,可以:
• 設置更強的密碼
• 或者臨時降低密碼策略級別
sql
SET GLOBAL validate_password.policy = 0;
安全建議
- 使用強密碼:包含大小寫字母、數字和特殊字符
- 定期更換密碼
- 不要共享root密碼
- 為不同應用創建單獨的用户
完成以上步驟後,MySQL root用户的密碼就設置成功了!