面向完全零基礎學習者,詳述 Windows 下免安裝包部署、服務管理、賬號權限、配置文件、命令行客戶端、庫表操作、數據類型、DDL/DML/DQL 核心語法,附圖形化驗證截圖。
mysql-5.6.25-winx64.zip)D:\software\mysql-5.6.25-winx64bin 目錄雙擊 mysqld.exe 或命令行 mysqldmysqladmin --version
# mysqladmin Ver 8.42 Distrib 5.6.25 for Win64 on x86_64
mysql -u root -p
# 初始密碼為空,直接回車
mysqladmin -u root password "123456"
mysqld --skip-grant-tablesmysql 免密登入USE mysql; UPDATE user SET password=PASSWORD("123456") WHERE user="root"; FLUSH PRIVILEGES;net start mysql # 啟動
net stop mysql # 停止
mysqladmin -u root -p shutdown # 關閉
datadir=D:/software/mysql-5.6.25-winx64/data
socket=mysql.sock
# 一般無需修改,錯誤日誌、pid 文件路徑按需調整
INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv)
VALUES ('localhost', 'yiibai', PASSWORD('123456'), 'Y', 'Y', 'Y');
FLUSH PRIVILEGES;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON tutorials.* TO 'yiibai'@'localhost' IDENTIFIED BY '123456';
CREATE DATABASE tutorials DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
SHOW DATABASES;
USE tutorials;
DROP DATABASE tutorials;
| 分類 | 類型 | 範圍/特點 |
|---|---|---|
| 數值 | TINYINT | -128~127 / 0~255 (UNSIGNED) |
| SMALLINT | -32768~32767 | |
| MEDIUMINT | -8388608~8388607 | |
| INT | -2147483648~2147483647 | |
| BIGINT | -9223372036854775808~9223372036854775807 | |
| DECIMAL(M,D) | 精確定點數,每位小數 1 字節 | |
| 日期時間 | DATE | YYYY-MM-DD (1000~9999) |
| DATETIME | YYYY-MM-DD HH:MM:SS | |
| TIMESTAMP | 1970~2038, 存 UTC 讀會話時區 | |
| TIME | HH:MM:SS | |
| YEAR | 1901~2155 | |
| 字符串 | CHAR(M) | 固定長 0~255, 右填充空格 |
| VARCHAR(M) | 可變長 0~65535 (5.0.3+) | |
| TEXT / BLOB | 65535 字節, BLOB 大小寫敏感 | |
| MEDIUMTEXT/BLOB | 16MB | |
| LONGTEXT/BLOB | 4GB | |
| ENUM | 枚舉值列表,存儲極緊湊 |
CREATE TABLE tutorials_tbl (
tutorial_id INT NOT NULL AUTO_INCREMENT,
tutorial_title VARCHAR(100) NOT NULL,
tutorial_author VARCHAR(40) NOT NULL,
submission_date DATE,
PRIMARY KEY (tutorial_id)
);
-- 插入
INSERT INTO tutorials_tbl (tutorial_title, tutorial_author, submission_date)
VALUES ('Learn MySQL', 'Saya', NOW());
-- 查詢
SELECT * FROM tutorials_tbl;
SELECT tutorial_title FROM tutorials_tbl WHERE tutorial_author = 'yiibai';
-- 更新
UPDATE tutorials_tbl SET tutorial_title = 'Learning JAVA' WHERE tutorial_id = 3;
-- 刪除
DELETE FROM tutorials_tbl WHERE tutorial_id = 3;
ORDER BY id DESC LIMIT 10, 20SELECT author, COUNT(*) FROM tutorials_tbl GROUP BY author HAVING COUNT(*) > 1INNER/LEFT/RIGHT JOININ/EXISTS/ANY/ALLNOW()、DATE_FORMAT()、CONCAT()、IF()、MD5()工具推薦:MySQL Workbench(官方 GUI,建模/管理/遷移)、phpMyAdmin(Web 管理)、DBeaver(通用數據庫客戶端)。