首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

CentOS 7 MySQL 5.7 快速上手指南:從安裝驗證到用戶授權、建表增刪改查、SQL 腳本執行

     編輯:MySQL 綜合教學

環境

  • OS:CentOS 7.x
  • MySQL:5.7(RPM/yum 安裝)

1. 驗證安裝與服務狀態

rpm -qa | grep mysql
systemctl status mysqld
# 或 service mysqld status

2. 啟動服務(首次啟動會初始化數據目錄,稍慢)

systemctl start mysqld

3. 設置 root 密碼(5.7 生成隨機臨時密碼於 /var/log/mysqld.log)

# 方式一:mysqladmin(需知舊密碼)
mysqladmin -u root -p'old_pwd' password 'NewPwd#123'

# 方式二:安全模式跳過權限表重置(忘記密碼時)
systemctl stop mysqld
mysqld_safe --skip-grant-tables &
mysql -u root
mysql> UPDATE mysql.user SET authentication_string=PASSWORD('NewPwd#123') WHERE User='root';
mysql> FLUSH PRIVILEGES;

4. 本地連接驗證

mysql -u root -p'NewPwd#123'

5. 基礎庫表操作

SHOW DATABASES;
USE mysql;
SHOW TABLES;
DESC user;  -- 或 SHOW COLUMNS FROM user; SHOW CREATE TABLE user;

6. 創建業務用戶與授權

-- 僅本地
CREATE USER 'app'@'localhost' IDENTIFIED BY 'AppPwd#123';
GRANT ALL PRIVILEGES ON smartdb.* TO 'app'@'localhost';
FLUSH PRIVILEGES;

-- 允許遠程(% 通配符)
CREATE USER 'app'@'%' IDENTIFIED BY 'AppPwd#123';
GRANT ALL PRIVILEGES ON smartdb.* TO 'app'@'%';
FLUSH PRIVILEGES;

7. 創建業務庫與表

CREATE DATABASE smartdb;
USE smartdb;

CREATE TABLE p2p_tb_camera (
    ipc_id  CHAR(7)      NOT NULL PRIMARY KEY,
    sn      VARCHAR(16)  NOT NULL,
    entid   VARCHAR(20)  NOT NULL,
    enc     VARCHAR(30)  NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

8. 增刪改查(CRUD)

-- 插入(全列)
INSERT INTO p2p_tb_camera VALUES ('758871','01AE465D08141280','1426822572_e3575b','enc_val');

-- 插入(指定列,其餘需有 DEFAULT 或允許 NULL)
INSERT INTO p2p_tb_camera (ipc_id, sn) VALUES ('123456','sn_val');  -- 若 entid/enc 無 DEFAULT 會報錯

-- 查詢
SELECT * FROM p2p_tb_camera;

-- 更新
UPDATE p2p_tb_camera SET sn='111' WHERE ipc_id='758871' AND entid='1';

-- 刪除
DELETE FROM p2p_tb_camera WHERE ipc_id='758871' AND sn='111';

9. 刪除表 / 庫

DROP TABLE p2p_tb_camera;
DROP DATABASE smartdb;

10. 執行 SQL 腳本文件

mysql> SOURCE /opt/scripts/create_tables.sql;

11. 修改用戶密碼 / 刪除用戶 / 回收權限

-- 修改密碼
UPDATE mysql.user SET authentication_string=PASSWORD('NewPwd') WHERE User='app';
FLUSH PRIVILEGES;

-- 刪除用戶
DROP USER 'app'@'localhost';
DROP USER 'app'@'%';

-- 僅回收權限
REVOKE ALL PRIVILEGES ON smartdb.* FROM 'app'@'localhost';

避坑提示:

  • 5.7 密碼欄位為 authentication_string,非舊版 password。
  • 遠程連接需防火牆放行 3306,且用戶 Host 為 %。
  • 生產環境建議啟用 validate_password 插件強制密碼複雜度。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved