MySQL——操作

一.库的操作

1.基本操作

创建数据库

create database 数据库名称;

查看数据库

show databases;

删除数据库

drop database 数据库名称;

执行删除之后的结果:

  • 数据库内部看不到对应的数据库
  • 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删

所以不要随意删除数据库

使用数据库

use 数据库名称;

查看当前所处数据库

select database();

修改数据库

alter database 数据库名称 新字符集 新校验规则;

对数据库的修改主要指的是修改数据库的字符集,校验规则。

查看创建数据库的详细信息

show create database 库名称;

能够查看当时创建该数据库时所编写的语句的信息。


2.数据库编码

创建数据库时,有两个编码集:

  • 数据库编码集:数据库未来存储的数据。
  • 数据库校验集:支持数据库进行字段比较使用的编码,本质也是一种读取数据库中数据采用的编码格式。

数据库无论对数据采用任何操作,都必须保证操作和编码必须是编码一致的。

查看系统默认字符集以及校验规则

show variables like 'character_set_database';

show variables like 'collation_database' ;
查看数据库支持的字符集

show charset;

字符集主要是控制用什么语言。比如utf8就可以使用中文。

查看数据库支持的字符集校验规则

show collation;

创建一个使用utf字符集,并带校对规则的数据库

create database db3 charset=utf8 collate utf8_general_ci;

不同的校验码规则,会影响数据库的数据读取,例如:

校验规则使用utf8_ general_ ci,不会区分数据的大小写
校验规则使用utf8_ bin,会区分数据的 大小写


3.备份与恢复

备份

mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径

这里的路径,最终要是一个以".sql"为后缀的文件

打开 .sql 文件,会发现备份实际上把整个创建数据库,建表,导入数据的语句都装载这个文件中。

还原

source****数据库备份存储的文件路径 ;

还原要在MySQL服务中操作。

备份的不是整个数据库,而是其中的一张表

mysqldump -u root -p 数据库名 表名1 表名2 > 数据库备份存储的文件路径

同时备份多个数据库

mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库备份存储的文件路径

如果备份一个数据库时,没有带上**-B** 参数 ,在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原。


4.查看库连接状态

show processlist

可以查看当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的,很有可能你的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。


二.表的操作

1.基本操作

创建表

create table 表名称(

列名称 列类型 comment '列的描述',

...

)character set 字符集 collate 校验规则 engine 存储引擎;

列名可以有很多个,字符集和校验规则如果没有指定,则保持与所在数据库一致。comment也可以省略。

查看表列表

show tables;

查看表结构

desc 表名称;

查看创建表的详细信息

show create table 表名称;

能够查看当时创建表的具体语句信息。

表插入数据

insert into 表名称 (列名称...) values (列数据...);

可以仅给指定的列添加数据,如果不指定特定的列,则默认表示为所有的列添加数据。

修改表名称

alter table 表名称 rename to 新名称;

删除表

drop table 表名称;

表添加新列

alter table 表名称 add 列名 列类型 comment '列的描述' after 列名称;

after表示要将新列添加在那一列的后边,如果不使用,则默认添加为最后一列。

修改列类型

alter table 表名称 modify 列名称 新类型;

删除列

alter table 表名称 drop 列名称;

修改列名称

alter table 表名称 change 列原名称 列新名称 列类型;

修改列名称需要给出完整的列定义。

相关推荐
tkevinjd几秒前
事务、ACID与隔离
java·数据库·sql
AI人工智能+电脑小能手7 分钟前
【大白话说Java面试题 第91题】【Mysql篇】第21题:分布式锁的使用场景和原理?
java·数据库·分布式·mysql·面试
流星白龙13 分钟前
【MySQL高阶】18.缓冲池页管理
数据库·windows·mysql
XZ-07000124 分钟前
MySQL-前缀索引
数据库·mysql
专注VB编程开发20年26 分钟前
淘宝上架销售技巧:Excel管理系统开发 / VBA / ERP / OA办公管理
java·数据库·excel
Leon-Ning Liu1 小时前
【真实经验分享】Grid管理仓库 (GIMR/MGMTDB) 迁移重建实战指南
数据库
广州灵眸科技有限公司1 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发套件组装上电
网络·数据库·人工智能·算法·飞书
文盲青年1 小时前
数据库移除0宽字符
数据库·oracle
wei_shuo1 小时前
SQL 高级特性实战:窗口函数、JSONB 与多数据库兼容完全指南
数据库·kingbasees
XZ-0700012 小时前
MySQL—B+树构建
数据库·b树·mysql