透過命令列工具 mysql 連線,基本語法:
mysql -h 主機位址 -u 使用者名稱 -p 密碼
mysql -u root -p,提示輸入密碼時直接按 Enter。mysql -h 110.110.110.110 -u root -pabcd123 (密碼緊接 -p)。exit 或 quit。使用 mysqladmin 工具:
mysqladmin -u root -p舊密碼 password 新密碼
mysqladmin -u root password ab12 (無舊密碼)。mysqladmin -u root -pab12 password djg345。在 MySQL 互動模式下執行 (需分號結尾):
GRANT 權限 ON 資料庫.資料表 TO '使用者'@'主機' IDENTIFIED BY '密碼';
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'test1'@'%' IDENTIFIED BY 'abc'; (允許任意主機存取所有庫)。GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc'; (僅本機存取特定庫)。GRANT ... IDENTIFIED BY '';。| 操作 | 指令 |
|---|---|
| 顯示所有資料庫 | SHOW DATABASES; |
| 切換/使用資料庫 | USE 資料庫名; |
| 顯示目前資料庫所有資料表 | SHOW TABLES; |
| 檢視資料表結構 | DESCRIBE 資料表名; |
| 建立資料庫 | CREATE DATABASE 資料庫名; |
| 建立資料表 | CREATE TABLE 表名 (欄位定義...); |
| 刪除資料庫/資料表 | DROP DATABASE/ TABLE 名稱; |
| 清空資料表資料 | DELETE FROM 表名; 或 TRUNCATE TABLE 表名; |
DROP DATABASE IF EXISTS school;
CREATE DATABASE school;
USE school;
CREATE TABLE teacher (
id INT(3) AUTO_INCREMENT NOT NULL PRIMARY KEY,
name CHAR(10) NOT NULL,
address VARCHAR(50) DEFAULT '深圳',
year DATE
);
INSERT INTO teacher VALUES (NULL, 'glchengang', '深圳一中', '1976-10-10');
INSERT INTO teacher VALUES (NULL, 'jack', '深圳一中', '1975-12-23');
技巧: 將上述 SQL 存成 school.sql,再用 mysql -u root -p < c:school.sql 批次執行。
資料格式:欄位以 Tab 分隔,NULL 用 \N 表示。
LOAD DATA LOCAL INFILE "檔案路徑" INTO TABLE 表名;
mysqldump --opt 資料庫名 > 備份檔名.sql
備份檔為純文字 SQL 指令,可直接匯入還原。