【MySQL】库的操作(增删查改 | 备份 | 恢复)

🔥个人主页: Forcible Bug Maker
🔥专栏: MySQL

目录

🌈前言

本篇博客主要内容:操作MySQL数据库的基本语句。

MySQL是一个关系型数据库管理系统(RDBMS),在MySQL中,"库"通常指的是"数据库"(Database)。本篇博客主要介绍的是如何操作这样一个库,以及如何对数据库进行备份和恢复。

🔥创建数据库

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

create_specification:
	[DEFAULT] CHARACTER SET charset_name
	[DEFAULT] COLLATE collation_name
  • 大写的表示关键字
  • \[\]是可选项
  • CHARACTER SET:指定数据库采用的字符
  • COLLATE:指定数据库字符集的校验规则

创建实操:

  • 创建一个名为db1的数据库
sql 复制代码
create database db1;

注:当创建的数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:utf8_general_ci

  • 创建一个使用utf8字符集的db2数据库
sql 复制代码
create database db2 charset=utf8;


  • 创建一个使用utf8字符集,并带校对规则的db3数据库
sql 复制代码
create database db3 charset=utf8 collate utf8_general_ci;


🔥字符集和校验规则

  • 查看系统默认数据库支持的字符集
sql 复制代码
show charset;

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

  • 查看数据库支持的字符集校验规则
sql 复制代码
show collation;

在MySQL中,校验规则对数据库的影响主要体现在确保字符比较和排序的一致性、优化数据存储和索引的效率、影响查询结果的准确性和性能,以及支持多语言环境下的字符集匹配和国际化需求,从而确保数据库在不同应用场景下的数据一致性和查询效率

🔥操纵数据库

  • 查看数据库
sql 复制代码
show database;
  • 显示创建语句
sql 复制代码
show create databse 数据库名;

注:MySQL建议我们关键字使用大写,但并不是必须的。

🔥修改数据库字符集和校验规则

复制代码
ALTER DATABASE db_name
[alter_spacification [,alter_spacification]...]
alter_spacification:
 [DEFAULT] CHARACTER SET charset_name
 [DEFAULT] COLLATE collation_name

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

例:将mytest数据库字符集改成gbk,校验规则改成gbk_chinese_ci

sql 复制代码
alter database mytest charset=gbk;
alter database mytest collate gbk_chinese_ci;

show create database mytest;  //检查

🔥数据库的删除

sql 复制代码
DROP DATABASE [IF EXISTS] db_name;

执行之后,数据库内部将看不到对应数据库。同时,对应的数据库文件夹被删除,级联删除,里面的数据表全部删除。

注:不要随意删除数据库。

🔥备份和恢复

  • 备份

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

打开test_db.sql文件里面的内容,其实我们把整个创建数据库,建表,导入数据库的语句都装载到了这个文件中。

  • 恢复
sql 复制代码
create database test_db;
use test_db;
source /路径/test_db.sql;

这时候再查看test_db数据库,就会发现表已经成功还原。

🌈结语

本篇博客简单介绍了如何操作MySQL数据库。正常情况下,不要随意的删除数据库。校验规则对数据库处理数据会造成一些影响。以及如何对数据库进行备份和恢复。

相关推荐
Shell运维手记44 分钟前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
麻瓜code1 小时前
【Mysql】重新学一遍 SQL 执行顺序
数据库·sql
这个DBA有点耶1 小时前
数据库一体机架构演进:从硬件堆叠到软硬深度耦合
服务器·网络·数据库·硬件架构·运维开发·database·数据库架构
一只fish2 小时前
优化器架构对比:Oracle vs PostgreSQL vs MySQL
mysql·postgresql·oracle
测试运维日常笔记2 小时前
Linux系统安装配置TigerVNC服务器完整指南
linux·运维·服务器
安_3 小时前
RAG的向量数据库:为LLM提供语义搜索能力
数据库
喜欢的名字被抢了3 小时前
程序出问题怎么查,以及如何让它不掉线
java·运维·数据库
雾时之林3 小时前
Linux----cron定时服务
linux·运维·服务器
这个DBA有点耶3 小时前
3000万个应用共享一套数据库:多租户“逻辑表”架构是如何做到的?
数据库·架构·dba
测试运维日常笔记4 小时前
Oracle 数据库连接认证方式详解
数据库·oracle