首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

MySQL 核心命令實戰手冊:連接、認證、用戶授權與日常運維

     編輯:PHP 相關知識

一、連接 MySQL 服務器

通用語法

mysql -h 主機地址 -u 用戶名 -p密碼

注意:-p 後直接跟密碼無空格(不安全,僅測試用),生產環境建議省略密碼讓終端提示輸入。

場景示例

場景命令說明
本機 root 無密碼mysql -u root -p回車進入,提示符 mysql>
遠程連接mysql -h 110.110.110.110 -u root -pabcd123指定 IP、用戶、密碼
指定端口mysql -h host -P 3307 -u user -p大寫 -P 為端口
退出exit 或 quit 或 \q任意方式退出

二、修改 root 密碼

方法 1:mysqladmin(推薦)

# 首次設密
mysqladmin -u root password 'newpass'
# 修改密碼
mysqladmin -u root -p'oldpass' password 'newpass'

方法 2:SQL 語句(需登錄後)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpass';
FLUSH PRIVILEGES;

三、用戶創建與授權(MySQL 5.7+/8.0 語法)

創建用戶

CREATE USER 'app_user'@'%' IDENTIFIED BY 'strongPass123';

授權模板

-- 僅讀
GRANT SELECT ON mydb.* TO 'app_user'@'%';
-- 讀寫
GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO 'app_user'@'%';
-- 全權限(慎用)
GRANT ALL PRIVILEGES ON mydb.* TO 'app_user'@'%';
-- 生效
FLUSH PRIVILEGES;

撤銷權限

REVOKE INSERT ON mydb.* FROM 'app_user'@'%';

四、常用運維命令速查

任務命令
顯示數據庫SHOW DATABASES;
切換數據庫USE dbname;
顯示表SHOW TABLES;
表結構DESC tablename; 或 SHOW CREATE TABLE tablename;
進程列表SHOW PROCESSLIST;
殺死進程KILL thread_id;
狀態變量SHOW GLOBAL STATUS LIKE 'Threads_connected';
配置參數SHOW VARIABLES LIKE 'max_connections';

五、備份與還原

mysqldump 邏輯備份

# 全庫備份
mysqldump -u root -p --single-transaction --routines --triggers --events dbname > backup.sql
# 單表備份
mysqldump -u root -p dbname table1 table2 > tables_backup.sql
# 僅結構
mysqldump -u root -p --no-data dbname > schema.sql

還原

mysql -u root -p dbname < backup.sql

六、安全加固清單

  1. 執行 mysql_secure_installation 交互式加固
  2. 禁用 root 遠程登錄:DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost','127.0.0.1','::1');
  3. 匿名用戶清理:DELETE FROM mysql.user WHERE User='';
  4. 測試庫移除:DROP DATABASE test;
  5. 最小權限原則:業務用戶僅授必要庫表權限

總結

掌握核心連接、認證、授權命令是 DBA 與開發的基本功。建議將常用命令做成別名或腳本,配合版本差異(5.7 vs 8.0 語法變化)建立團隊操作手冊,提升運維效率與安全性。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved