REVOKEALL PRIVILEGES ON 数据库名.*FROM'username'@'host';
查看用户权限
1
SHOW GRANTS FOR'username'@'host';
删除用户
1
DROPUSER'username'@'host';
5️⃣ 数据库操作
创建数据库
1
CREATE DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
删除数据库
1
DROP DATABASE 数据库名;
修改数据库编码
1
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
6️⃣ 表操作
创建表
1 2 3 4 5 6 7
CREATE TABLE students ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, age INT, gender ENUM('M','F'), create_time TIMESTAMPDEFAULTCURRENT_TIMESTAMP );
查看表结构
1
DESC students;
修改表
1 2 3
ALTER TABLE students ADDCOLUMN address VARCHAR(100); ALTER TABLE students MODIFY COLUMN age SMALLINT; ALTER TABLE students DROPCOLUMN address;
删除表
1
DROPTABLE students;
7️⃣ 数据操作(CRUD)
插入数据
1
INSERT INTO students (name, age, gender) VALUES ('Tom', 20, 'M');
查询数据
1 2
SELECT*FROM students; SELECT name, age FROM students WHERE gender='M'ORDERBY age DESC LIMIT 5;
更新数据
1
UPDATE students SET age=22WHERE name='Tom';
删除数据
1
DELETEFROM students WHERE id=3;
8️⃣ 常用函数
类型
示例
功能
数值
ROUND(3.14159, 2)
四舍五入
字符串
CONCAT(first_name, ' ', last_name)
字符串拼接
日期
NOW()
当前时间
聚合
COUNT(*), AVG(age), SUM(price)
统计数据
条件
IF(age>18, 'adult', 'child')
条件判断
9️⃣ 视图(View)
创建视图
1 2
CREATEVIEW adult_students AS SELECT name, age FROM students WHERE age >=18;
查询视图
1
SELECT*FROM adult_students;
删除视图
1
DROPVIEW adult_students;
🔟 索引(Index)
创建索引
1
CREATE INDEX idx_name ON students(name);
查看索引
1
SHOW INDEX FROM students;
删除索引
1
DROP INDEX idx_name ON students;
1️⃣1️⃣ 事务(Transaction)
开启事务
1
START TRANSACTION;
回滚
1
ROLLBACK;
提交
1
COMMIT;
示例
1 2 3 4
START TRANSACTION; UPDATE accounts SET balance = balance -100WHERE id =1; UPDATE accounts SET balance = balance +100WHERE id =2; COMMIT;
1️⃣2️⃣ 备份与恢复
备份数据库
1
mysqldump -u root -p 数据库名 > backup.sql
恢复数据库
1
mysql -u root -p 数据库名 < backup.sql
1️⃣3️⃣ 常见问题与优化建议
问题
解决方法
无法远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码';