MySQL库的操作

文章目录

创建数据库

本质就是在/var/lib/mysql创建一个目录

sql 复制代码
create database db_name;

如果该数据库不存在再创建,需加上if not exists选项

sql 复制代码
create database if not exists db_name;

四种创建带编码格式或校验规则的数据库


删除数据库

本质就是在/var/lib/mysql删除一个目录

cpp 复制代码
drop database db_name;

总结:

在/var/lib/mysql创建一个目录,再mysql中可以用show databases;查看到,也可以使用drop database db_name;删除;总之,两者是互通的。

但是不建议在/var/lib/mysql下手动创建,这样不合理;
执行删除之后的结果:

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

查看数据库

sql 复制代码
show databases;

修改数据库

sql 复制代码
ALTER DATABASE db_name [[DEFAULT] CHARSET=character_name] [[DEFAULT] COLLATE=collation_name];

修改校验规则

字符集和校验规则

创建数据库的时候,有两个编码集;

1、数据库编码集------数据库未来存储数据;

2、数据库校验集------支持数据库的字段比较,本质也是一种读取数据库中数据的采用的编码格式;
数据库无论对数据做任何操作,都必须保证操作和编码必须是编码一致的;

查看系统默认的字符集

show variables like 'character_set_database';

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

show variables like 'collation_database';

查看数据库支持的字符集

show charset;

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

show collation;

校验规则对数据库的影响

校验规则utf8_general_ci,不区分大小写;

校验规则utf8_bin,区分大小写;

创建两个数据库

utf8_general_ci

插入数据

查看数据

查询姓名是'cxy'的信息

utf8_bin

插入数据

查看数据

查询姓名是'cxy'的信息

我们发现 ,

校验规则utf8_general_ci,不区分大小写;

校验规则utf8_bin,区分大小写;

数据库的备份和恢复

备份

我们需要备份的库以及其中的内容

我们执行下述代码即可将数据库备份在当前路径下

复制代码
mysqldump -P 端口号 -u 用户名 -p 密码 -B 数据库名1 数据库名2 ...  > 数据库备份存储的文件路径

当我们打开back1.sql文件后,我们发现文件中有许多命令是我们之前执行的各种SQL命令;

恢复

我们执行下述代码恢复数据库

恢复后得结果

数据库中的内容也保存在里面

总的来说当我们打开back1.sql文件时,我们就意识到了数据库的备份不过就是,我们将创建数据库以及对数据库操作的SQL语句,其中包括创建数据库、创建表、插入数据等SQL语句操作进行保存;在恢复时,重新执行上述操作

相关推荐
tjsoft9 分钟前
网站如何被百度收录之探索笔记
笔记
安审若无35 分钟前
图数据库neoj4安装部署使用
linux·运维·数据库
fenglllle1 小时前
mybatis-plus SQL 注入漏洞导致版本升级引发的问题
数据库·sql·mybatis
learning-striving1 小时前
SQL server创建数据表
数据库·sql·mysql·sql server
Yeats_Liao1 小时前
时序数据库系列(三):InfluxDB数据写入Line Protocol详解
数据库·后端·时序数据库
天地之于壹炁兮2 小时前
编程I/O入门指南:核心操作全解析
数据库·windows·microsoft
切糕师学AI2 小时前
SQL中的函数索引/表达式索引
数据库·sql·mysql·postgresql·oracle
武子康2 小时前
Java-166 Neo4j 安装与最小闭环 | 10 分钟跑通 + 远程访问 Docker neo4j.conf
java·数据库·sql·docker·系统架构·nosql·neo4j
QT 小鲜肉2 小时前
【个人成长笔记】在 Linux 系统下撰写老化测试脚本以实现自动压测效果(亲测有效)
linux·开发语言·笔记·单片机·压力测试
MeowKnight9582 小时前
【Qt】Qt实践记录2——TCP通信服务器和客户端demo
笔记·qt