企业网站排名关键,wordpress 标签 边栏,买域名价格,网站开发培训机构MySQL常用命令汇总
简介
MySQL是一个广泛使用的开源关系型数据库管理系统#xff0c;由瑞典的MySQL AB公司开发#xff0c;现属于Oracle公司。 MySQL支持SQL#xff08;结构化查询语言#xff09;#xff0c;这是数据库操作的标准语言#xff0c;用户可以使用SQL进…MySQL常用命令汇总
简介
MySQL是一个广泛使用的开源关系型数据库管理系统由瑞典的MySQL AB公司开发现属于Oracle公司。 MySQL支持SQL结构化查询语言这是数据库操作的标准语言用户可以使用SQL进行数据查询、插入、更新和删除操作。
MySQL的主要特点包括
开源用户可以免费下载、使用和修改其源代码尽管现在属于Oracle公司但其社区版仍然保留开源模式。高性能和扩展性MySQL能够处理从小型应用程序到大型系统的多种数据工作负载适合高并发的在线事务处理OLTP系统。跨平台支持MySQL支持多种操作系统包括Linux、Windows和macOS这使得它可以在不同的开发环境中广泛使用。多种存储引擎MySQL支持多种存储引擎如InnoDB和MyISAM用户可以根据具体需求选择适合的引擎。
MySQL的应用场景非常广泛特别是在网络应用中十分流行。许多Web开发框架如PHP、Python的Django都可以与MySQL无缝集成适用于内容管理系统CMS、电子商务、社交媒体平台等方面。
MySQL命令是很多的如果全面列出的话篇幅较长我在这里面只是罗列了一些常用的供大家参考。
1. 登录与退出
登录 MySQL
mysql [OPTIONS]mysql -uroot -p选项说明示例-u指定用户名-u root-p提示输入密码密码可跟在后面但不安全-p1234 或 -p-h指定主机名默认 localhost-h 192.168.1.100-P指定端口默认 3306-P 3307--ssl启用 SSL 安全连接--ssl--socket指定套接字文件--socket/tmp/mysql.sock--database登录后直接使用指定数据库--databasetestdb
退出 MySQL
SQL exit;或
SQL quit;2. 数据库管理
查看数据库列表
show databases;创建数据库
CREATE DATABASE 数据库名 [OPTIONS];CREATE DATABASE mydb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;选项说明示例DEFAULT CHARACTER SET设置数据库的默认字符集DEFAULT CHARACTER SET utf8mb4DEFAULT COLLATE设置数据库的排序规则与字符集匹配DEFAULT COLLATE utf8mb4_general_ci
删除数据库
drop databases 数据库名;使用指定数据库
USE 数据库名;
use mysql;查看当前使用的数据库
SELECT DATABASE();查看数据库大小
SELECT table_schema AS 数据库名,ROUND(SUM(data_length index_length) / 1024 / 1024, 2) AS 大小_MB
FROM information_schema.tables
GROUP BY table_schema;3. 表管理
查看当前数据库的所有表
SHOW TABLES;查看表结构
DESC 表名;或
SHOW COLUMNS FROM 表名;创建表
CREATE TABLE 表名 (列名 数据类型 [约束条件],...
) [OPTIONS];CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50) NOT NULL,email VARCHAR(100) UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINEInnoDB DEFAULT CHARSETutf8mb4;选项说明示例ENGINE设置存储引擎如 InnoDB、MyISAMENGINEInnoDBDEFAULT CHARSET设置表的默认字符集DEFAULT CHARSETutf8mb4AUTO_INCREMENT指定自增主键id INT AUTO_INCREMENT PRIMARY KEY
查看表的创建语句
SHOW CREATE TABLE 表名;修改表结构
添加列
ALTER TABLE 表名 ADD 列名 数据类型 [位置];位置FIRST在最前AFTER 列名在指定列后。
修改列
ALTER TABLE 表名 MODIFY 列名 数据类型;删除列
ALTER TABLE 表名 DROP 列名;重命名列
ALTER TABLE 表名 CHANGE 原列名 新列名 数据类型;删除表
DROP TABLE 表名;清空表保留结构
TRUNCATE TABLE 表名;4. 数据操作
插入数据
INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);INSERT INTO users (name, email) VALUES (Alice, liybexample.com);批量插入
INSERT INTO 表名 (列名1, 列名2) VALUES
(值1, 值2),
(值3, 值4),
(值5, 值6);查询数据
SELECT 列名1, 列名2, ... FROM 表名 [WHERE 条件] [ORDER BY 列名 ASC|DESC] [LIMIT 偏移量, 行数];SELECT * FROM users WHERE email LIKE %example.com ORDER BY created_at DESC LIMIT 10;常用子句
子句说明示例WHERE指定条件WHERE age 30ORDER BY排序结果集ORDER BY name ASCLIMIT限制返回行数支持偏移量LIMIT 5 OFFSET 10GROUP BY按列分组GROUP BY departmentHAVING筛选分组结果HAVING COUNT(*) 1
更新数据
UPDATE 表名 SET 列名1值1, 列名2值2 WHERE 条件;示例
UPDATE users SET emailnew_emailexample.com WHERE nameAlice;删除数据
DELETE FROM 表名 WHERE 条件;DELETE FROM users WHERE id10;5. 用户管理
创建用户
CREATE USER 用户名主机 IDENTIFIED BY 密码;CREATE USER testuserlocalhost IDENTIFIED BY mypassword;参数说明示例用户名用户名testuser主机用户允许访问的主机% 表示任意主机localhost 或 %密码用户密码password123
修改用户密码
ALTER USER 用户名主机 IDENTIFIED BY 新密码;ALTER USER testuserlocalhost IDENTIFIED BY newpassword123;删除用户
DROP USER 用户名主机;授予权限
GRANT 权限列表 ON 数据库.表 TO 用户名主机;权限说明ALL PRIVILEGES授予所有权限SELECT允许读取表中的数据INSERT允许向表中插入数据UPDATE允许修改表中的数据DELETE允许删除表中的数据CREATE允许创建数据库和表DROP允许删除数据库和表
GRANT SELECT, INSERT ON mydb.* TO testuserlocalhost;撤销权限
REVOKE 权限列表 ON 数据库.表 FROM 用户名主机;REVOKE INSERT ON mydb.* FROM testuserlocalhost;刷新权限
FLUSH PRIVILEGES;6. 性能优化
查看查询执行计划
EXPLAIN SELECT 查询语句;EXPLAIN SELECT * FROM users WHERE emailtestexample.com;优化表
OPTIMIZE TABLE 表名;慢查询查看
SHOW VARIABLES LIKE slow_query_log;启用慢查询
SET GLOBAL slow_query_log1;检查表
CHECK TABLE 表名;修复表
REPAIR TABLE 表名;