# 格式:mysql -h主機 -u用戶 -p密碼
# 本機連線(預設 root 無密碼)
mysql -u root -p
# 遠端連線
mysql -h110.110.110.110 -u root -p123
# 退出
exit
# 格式:mysqladmin -u用戶 -p舊密碼 password 新密碼
# 首次給 root 設密碼
mysqladmin -u root password ab12
# 修改密碼
mysqladmin -u root -pab12 password djg345
# 格式: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 SELECT,INSERT,UPDATE,DELETE ON mydb.* TO test2@localhost IDENTIFIED BY '';
| 操作 | 指令 |
|---|---|
| 顯示所有資料庫 | SHOW DATABASES; |
| 切換資料庫 | USE db_name; |
| 顯示資料表 | SHOW TABLES; |
| 檢視表結構 | DESCRIBE table_name; |
| 建立資料庫 | CREATE DATABASE db_name; |
| 建立資料表 | CREATE TABLE t (c1 VARCHAR(20), c2 CHAR(1)); |
| 刪除資料庫 | DROP DATABASE db_name; |
| 刪除資料表 | DROP TABLE table_name; |
| 清空表資料 | DELETE FROM table_name; |
| 查詢所有資料 | SELECT * FROM table_name; |
| 插入資料 | INSERT INTO table_name VALUES ('hyq','M'); |
| 更新資料 | UPDATE t SET c1='a',c2='b' WHERE c3='c'; |
| 匯入文字檔 | LOAD DATA LOCAL INFILE 'D:/data.txt' INTO TABLE t; |
| 匯入 SQL 檔 | SOURCE d:/script.sql; |
| 修改 root 密碼 | UPDATE mysql.user SET password=PASSWORD('新密碼') WHERE User='root'; FLUSH PRIVILEGES; |
| 顯示目前資料庫 | SELECT DATABASE(); |
| 顯示目前用戶 | SELECT USER(); |
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,'allen','大連一中','1976-10-10');
INSERT INTO teacher VALUES (NULL,'jack','大連二中','1975-12-23');
可將上述指令存為 school.sql,用以下方式匯入:
# 命令列
mysql -uroot -p密碼 < c:\school.sql
# 或 MySQL 內部
SOURCE c:\school.sql;
格式:欄位以 Tab 分隔,NULL 用 \n 表示
3 rose 大連二中 1976-10-10
4 mike 大連一中 1975-12-23
LOAD DATA LOCAL INFILE 'c:/school.txt' INTO TABLE teacher;
# 1. 備份整個資料庫
mysqldump -u user -p db_name > backup.sql
# 2. 備份單一資料表
mysqldump -u user -p db_name table_name > backup.sql
# 3. 僅備份結構(不含資料)
mysqldump -u user -p -d --add-drop-table db_name > structure.sql
# 4. 指定字元集備份
mysqldump -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt db_name > backup.sql