MySQL库的操作

目录

前言

一、创建一个数据库

二、库的编码规则

1.查看MySQL的默认字符集、校验集

2.查看MySQL支持的所有字符集与校验集

3.校验集对MySQL的影响

三、操作数据库

1.查看数据库

2.显示创建语句

3.修改数据库

4.数据库的删除

5.数据库的备份与还原

6.查看数据库的连接


前言

本文介绍MySQL相关的库操作


一、创建一个数据库

语法:

bash 复制代码
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification] ...

create_specification:
[DEFAULT] CHARACTER SET charset_name    //字符集规则
[DEFAULT] COLLATE collation_name        //字符校验集规则

说明:

①大写的部分是关键字

②[]中的内容表示可选项

③CHARACTER SET:指定数据库字符集规则

④COLLATE: 指定数据库字符集的校验规则

注意:MySQL的指令要以英文的分号作为结尾。

cpp 复制代码
//查看现有数据库指令
show databases;

图1 创建一个数据库实例

二、库的编码规则

1.查看MySQL的默认字符集、校验集

cpp 复制代码
show variables like 'character_set_database';
show variables like 'collation_database';

图2 查看默认字符集与校验集

2.查看MySQL支持的所有字符集与校验集

cpp 复制代码
//查看全部MySQL支持的字符集与校验集
//字符集
show chatset;

//校验集
show collation;

图3 查看MySQL支持的字符集与校验集

3.校验集对MySQL的影响

以utf8为例:

校验集utf8_general_ci(不区分大小写)、校验集utf_bin(区分大小写)

补充几个与表有关的指令:

cpp 复制代码
use [数据库的名字]                            //进入该数据库
create table [表的名字]([列名][数据类型])      //创建一个表
show tables;                                 //展示该数据库中的表
insert into [表的名字] values([要赋予的值]);   //向表中插入一个数据
desc [表的名字]                               //查看表的信息

图4 创建分别使用utf8_bin、utf8_general_ci作为校验集的库

图5 进入其中的一个库并创建一个表

图6 向表中插入数据并查找符合要求的行

图7 查看两个表的结果

图8 建立的表与各级的关系

三、操作数据库

1.查看数据库

cpp 复制代码
show databases;

图9 查看数据库

2.显示创建语句

创建语句就是创建某已知数据库的等效语句。

cpp 复制代码
show create database [数据库名称];

图10 查看创建语句

3.修改数据库

数据库的修改操作一般认为是对数据库字符集和字符校验集的修改,数据库的名字一般是禁止修改的,因为在工程中,会有相关的程序与数据库名字相绑定,一旦修改数据库名字会令程序找不到对应数据库,为了禁止这种情况,MySQL不提供更改数据库名字的方法。

cpp 复制代码
ALTER DATABASE db_name [alter_spacification] ...

alter_spacification:
[DEFAULT] CHARACTER SET charset_name    //修改字符集
[DEFAULT] COLLATE collation_name        //修改校验集

图11 alter修改数据库

4.数据库的删除

cpp 复制代码
drop database [数据库的名称]

图12 删除数据库

5.数据库的备份与还原

cpp 复制代码
mysqldump -P3306 -u root -p -B 数据库名 > 备份文件存储路径;         //备份整个数据库
mysqldump -u root -p 数据库名 表名1 表名2 > 备份文件存储路径;        //备份数据库中的表
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 备份文件存储路径;  //备份多个数据库
source 备份文件存储路径;                                           //恢复备份内容

图13 备份数据库

我们看看生成的备份文件里有什么 :
图14 生成的备份文件内容

不难发现,其中有我们曾将插入到数据库的数据,实际上,这里面存储的就是我们之前对这个备份库的所有操作,如果要将这个库还原,实际上就是让MySQL在按照我们之前创建库所执行的程序在走一遍,当然其中省略去了一些不必要或者可优化的步骤。
图15 数据库的恢复

6.查看数据库的连接

MySQL开放链接查询实际上一种安全策略,当数据库所有这发现未知连接的时候,可以及时发现数据库被入侵并展开防御手段降低损失。

cpp 复制代码
show processlist;

图16 查看连接情况

相关推荐
2301_795099743 分钟前
HTML怎么创建时间轴布局_HTML结构化时间线写法【方法】
jvm·数据库·python
运气好好的6 分钟前
CSS组件库如何快速扩展_通过Sass @extend继承基础布局
jvm·数据库·python
m0_6138562914 分钟前
Go install 命令失效原因解析与正确使用指南
jvm·数据库·python
A_aspectJ19 分钟前
【Java基础开发】基于 Java Swing +MySQL + JDBC 版实现图书管理系统
java·开发语言·mysql
星马梦缘19 分钟前
数据库作战记录6 实验6
数据库·oracle
AC赳赳老秦20 分钟前
DBA 专属方案:用 OpenClaw 实现 SQL 语句优化、慢查询分析、数据库备份巡检全自动化
服务器·前端·数据库·ffmpeg·自动化·deepseek·openclaw
学术阿凡提21 分钟前
Spring Boot 优雅实现异步调用:从入门到自定义线程池与异常处理
java·数据库·算法
夏末蝉未鸣0122 分钟前
跨境电商SQL Server报表生成优化:索引一改,600秒变75秒
数据库
hhb_61835 分钟前
SQL高性能查询优化与复杂场景实战指南
服务器·数据库·sql
2301_7735536239 分钟前
Redis怎样优化复制缓冲池大小_调大repl-backlog-size减少频繁的全量同步触发
jvm·数据库·python