命令
DDL-定义数据库、表结构
- 数据库操作
- 查询所有数据库:
SHOW DATABASES;
- 查询当前数据库:
SELECT DATABASE();
- 创建数据库:
CREATE DATABASE 数据库名;
- 使用数据库:
USE 数据库名;
- 删除数据库:
DROP DATABASES 数据库名;
- 查询所有数据库:
- 表操作
- 查询
- 查询当前数据库内所有表:
SHOW TABLES;
- 查询表结构:
DESC 表名;
- 查询指定表的建表语句:
SHOW CREATE TABLE 表名;
- 查询当前数据库内所有表:
- 创建
- 创建表:
CREATE TABLE 表名(字段1 字段1类型 字段1约束, 字段2 字段2类型 字段2约束...);
- 创建表:
- 修改
- 删除表:
DROP TABLE 表名;
//删除该表以及表内数据TRUNCATE TABLE 表名;
//只删除表内数据
- 修改字段:
ALTER TABLE 表名 ADD/MODIFY/CHANGE/DROP/RENAME TO ...;
- 删除表:
- 查询
DML-数据增删改
添加数据:
# 给指定字段添加数据
INSERT INTO 表名(字段名1, 字段名2, ...) VALUES(值1, 值2, ...);
# 给全部字段添加数据
INSERT INTO 表名 VALUES(值1, 值2, ...);
# 批量添加数据
INSERT INTO 表名(字段名1, 字段名2, ...) VALUES (值1, 值2, ...),(值1, 值2, ...),(值1, 值2, ...);
INSERT INTO 表名 VALUES(值1, 值2, ...),(值1, 值2, ...),(值1, 值2, ...);
修改数据:UPDATE 表名 SET 字段名1 = 值1 , 字段名2 = 值2 , .... [ WHERE 条件 ];
删除数据:DELETE FROM 表名 [ WHERE 条件 ];
DQL-查询语句-select
- 基本查询:
SELECT 字段1, 字段2, 字段3 … FROM 表名;
# 查询多个字段SELECT * FROM 表名;
# 返回所有字段SELECT 字段1 [ AS 别名1 ] , 字段2 [ AS 别名2 ] … FROM 表名;
# 设置别名,AS可省略,增强字段可读性SELECT DISTINCT 字段列表 FROM 表名;
# 查询时会去除重复记录
- 条件查询(where):
SELECT 字段列表 FROM 表名 WHERE 条件列表;
- 聚合函数(count、max、min、avg、sum):
SELECT 聚合函数(字段列表) FROM 表名;
- 分组查询(group by):
SELECT 字段列表 FROM 表名 [ WHERE 条件 ] GROUP BY 分组字段名 [ HAVING 分组后过滤条件];
- 排序查询(order by):
SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1 , 字段2 排序方式2 ;
- 分页查询(limit):
SELECT 字段列表 FROM 表名 LIMIT 起始索引, 查询记录数;
安装与配置
安装
安装命令:
sudo apt update //获取软件更新包
sudo apt upgrade //执行软件更新(与mysql安装无关)
sudo apt-get install mysql-server //Ubuntu20.04以上版本默认安装mysql8
查看运行状态:systemctl status mysql
查看安装过程中系统默认创建的用户:sudo cat /etc/mysql/debian.cnf
首次登录
默认用户登录:mysql -u debian-sys-maint -p
//使用上面查找到的默认用户名,根据提示输入默认用户密码
修改密码:
- 查看
user
表:use mysql;
select user,plugin from user;
- 修改
root
密码:- 修改
root
密码格式:update user set plugin='mysql_native_password' where user='root';
- 刷新权限:
flush privileges;
- 修改密码:
alter user 'root'@'localhost' identified by 'mysql0217';
- 修改
卸载
- 卸载MySQL的所有相关软件包:
sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
- 删除相关文件:
- 配置文件:
sudo rm -rf /etc/mysql
- 数据文件:
sudo rm -rf /var/lib/mysql
- 日志文件:
sudo rm -rf /var/log/mysql
sudo rm -rf /var/log/mysql.*
- 配置文件:
- 删除残余依赖包:
sudo apt autoremove --purge
- 验证系统中是否仍有与MySQL相关的文件没被清理:
dpkg -l | grep mysql