MySQL数据库 - 库的操作

news2024/11/17 22:48:10


目录​​​​​​​

一、创建数据库

二、创建数据库案例

 三、字符集和校验规则

四、校验规则对数据库的影响

五、操纵数据库 

1、查看数据库

2、显示创建语句

3、修改数据库

4、删除数据库 

六、数据库的备份与恢复

1、数据库的备份

2、数据库的恢复

 3、表的备份

4、表的恢复

5、查看连接情况


一、创建数据库

语法:

 create database [if not exists] db_name [create_specification [create_specification]...]
    
    create_specification:
        [default] character set charset_name
        [default] collate collation_name

• SQL中大写的表示关键字,[ ] 中代表是可选项

• charset 用于指定数据库所采用的编号格式

• collate 用于指定数据困所采用的校验规则

注意: 如果如果在创建数据库时没有显示的指名数据库的编码格式或校验规则,则默认会使用MySQL配置文件中对应的编码格式或校验规则。

例如:在 /etc/my.cnf 这个文件就可以看到,此时都会默认采用 utf-8的编码格式。


二、创建数据库案例

 1. 创建数据库时,不指明数据库的编码格式或校验规则,如下:

 此时对应在系统目录  /var/lib/mysql 这个下面就会多出一个 test1 的目录,而创建数据库的本质也是在系统下创建目录。

 此时默认采用的编码格式和校验规则为:utf8 / utf8_general-ci

2.  创建数据库时,指明编码格式以及校验规则:

 此时采用的编码格式和对应的校验规则就是:gbk的了

 三、字符集和校验规则

查看系统默认的字符集

通过查看MySQL系统变量中 variables 中的character_set_database,可以得知系统默认的字符集,如下:

注意:如果在指定数据库下使用该SQL,查看的就是对应该数据库的字符集。


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

通过查看MySQL系统变量中 variables 中的 collation_database,可以得知系统默认的字符集校验规则,如下:

 注意:如果在指定数据库下使用该SQL,查看的就是对应该数据库的校验规则。


查看数据库支持的字符集


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


字符集编码格式:指的是存储数据时各个字符的底层编码,用于指定数据的存储格式。

字符集校验规则:指的是字符集内用于比较字符的一套规格,用于对数据进行对比。

字符集编码格式 - 字符集校验规则 要保持一致


四、校验规则对数据库的影响

创建一个数据库,校验规则使用 utf8_general_ci (不区分大小写)

 在数据库中创建一个person表,因为创建未指定表的编码格式和校验规则,因此person表会采用就近原则,直接使用数据库的编码格式和校验规则。

此时在表中插入一些数据:

此时通过 select 语句查看表中的数据,指定select 时加上where条件,因为是不区分大小写的,所以会把 A 和 a 一起显示出来:


创建一个数据库,校验规则采用 utf8_bin (区分大小写)

这里操作与刚刚一致,直接select 查看结果:

 可以看到 utf8_bin 的校验规则是区分大小写的。


五、操纵数据库 

1、查看数据库

mysql> show databases;

示例:


2、显示创建语句

mysql> show create database d1;

示例:

• MySQL中建议关键字使用大写,但是不是必须的。

• 数据库的名字加上反引号 `` (ESC下面那个,英文输入法的时候),为了防止数据库名字与关键字冲突。

• /*!40100 default.... */ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话。


3、修改数据库

注意:对数据库的修改主要是指修改数据库的字符集或者校验规则。

示例:将数据库的字符集改为gbk,并且将校验规则改为gbk_chinses_ci 


4、删除数据库 

mysql> drop databse [if exists] db_name;

示例:

在删除数据库之后,数据库中所有的表也随之删除,所以不要随意删除数据库。


六、数据库的备份与恢复

1、数据库的备份

 对指定数据库进行备份,语法如下:

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

直接拿之前的 d1 数据库做测试:

 打开这个备份的.sql文件,可以看到里面的内容都是,之前对该数据库操作的SQL语句,包括:创建数据库,创建表等,


2、数据库的恢复

先将进行测试的 d1 数据库进行删除操作:

语法:

# source  指定文件路径

 查看表中的内容是否正确:(可以看到是与之前一致的)


 3、表的备份

语法,如下:

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

4、表的恢复

语法,如下:

# source 表备份存储的文件路径

这里的表备份与恢复操作基本上与数据库的备份和恢复一致,不做出演示。

5、查看连接情况

使用 show processlist SQL可以查看当前MySQL连接的用户情况,示例:

•  Id:一个标识,可以在MySQL中通过 kill Id 杀死指定 Id 的线程。

• User:显示当前用户,如果不是root,这个命名就只显示普通用户权限范围内的SQL语句。

• Host:显示这个语句是从哪个IP的哪个端口上发出的,可以追踪出问题语句的用户。

• db:当前执行的命名是在哪一个数据库上,如果没有数据库则该值为NULL。

• Command:显示当前连接执行的命令,一般是休眠(Sleep),查询(Query),连接

(Connect)。

• Time:表示该线程处于当前状态的时间,单位为 秒。

• State:显示使用当前连接的SQL语句状态。

• Info:一般记录的是线程执行的语句,默认只显示100个字符,看全部使用 (show full processlist)。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/734243.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【网络系统集成】Pfsense防火墙实验

1.实验名称 Pfsense防火墙实验 2.实验目的 通过动手实践配置pfsense对加深对防火墙的原理与应用的理解。 3.实验内容 (1)安装并完成pfsense防火墙软件的基本配置(WAN, LAN,局域网

刘积仁:东软不太喜欢风口,更看重长期主义

作为数字和软件服务产业一年一度的行业盛宴,2003年,中国国际软件和信息服务交易会(简称“软交会”)正式诞生。2019年,大会更名为中国国际数字和软件服务交易会(简称“数交会”),至今…

【C++修炼之路】string 概述

👑作者主页:安 度 因 🏠学习社区:StackFrame 📖专栏链接:C修炼之路 文章目录 一、string 为何使用模板二、string 类认识1、构造/析构/赋值运算符重载2、容量操作3、增删查改4、遍历5、迭代器6、非成员函数…

[NSSRound#13 Basic]flask?jwt?解题思路过程

过程 打开题目链接,是一个登录框,不加验证码,且在注册用户名admin时提示该用户名已被注册,因此爆破也是一种思路。不过根据题目名字中的提示,jwt,且拥有注册入口,注册一个用户先。 注册完用户…

Flink DataStream之使用filter实现分流

新建类 package test01;import org.apache.flink.api.common.JobExecutionResult; import org.apache.flink.configuration.Configuration; import org.apache.flink.streaming.api.datastream.DataStreamSource; import org.apache.flink.streaming.api.datastream.SingleOut…

Pygame Zero(pgzrun)游戏库介绍

Pygame Zero(pgzrun)游戏库介绍 pgzero是python的一个第三方库。pgzrun 是 python game zero run 的缩写, 它对 Pygame 进行了封装, 屏蔽了繁琐枯燥的框架代码, 让学习者可以更专注于游戏的实现逻辑, 并且更快看到成果。 官网https://pygame-zero.read…

单样本微调给ChatGLM2注入知识~

前方干货预警:这可能也是一篇会改变你对LLM微调范式,以及对LLM原理理解的文章。 同时这也是一篇非常有趣好玩,具有强大实操性的ChatGLM2微调喂饭级教程。 我们演示了使用AdaLoRA算法,使用1条样本对ChatGLM2-6b实施微调。几分钟就成…

【Redis】五大数据类型(操作命令)

🎯Redis 命令 🚩Redis 键(key) 这些是 Redis 数据库中的命令,用于对数据类型进行操作和管理。以下是每个命令的含义和用法: DEL:删除一个或多个键。DUMP:将一个键的值转储到一个字符串中。EXPIRE&#x…

【数据结构二叉树OJ系列】4、翻转二叉树(又称求二叉树的镜像)

目录 法一、 法二、 题述: 翻转一颗二叉树。 输入: 输出: 题中已给: struct TreeNode {int val;struct TreeNode* left;struct TreeNode* right; }; TreeNode* invertTree(struct TreeNode* root) 法一、 思路:…

操作指南 | 如何使用Foundry在Moonbeam上进行部署

Foundry是一种以太坊开发环境,可帮助构建者管理依赖项、编译项目、测试或部署合约以及通过指令与区块链进行交互。Foundry已成为流行的开发智能合约开发环境,仅需要使用Solidity即可进行操作。Moonbeam在官方文档网站提供了有关将Foundry与Moonbeam网络结…

vector [] 赋值出现的报错问题

下面这段代码的作用是创建了一个整数类型的vector&#xff08;std::vector<int>&#xff09;并对其进行操作。以下是代码的详细说明&#xff1a; 使用reserve(10)方法为向量分配至少10个元素的存储空间。reserve() 预留了额外的存储空间&#xff0c;以避免后续添加元素时…

C++之typeof和typeid用法(一百五十三)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

动态规划--Fibonacci数列 III

描述 众所周知&#xff0c;Fibonacci数列是一个著名数列。它的定义是&#xff1a; 本题要求采用第三种方法&#xff1a;简单的动态规划。 用数组把求出来的 Fibonacci 数列保存下来&#xff0c;以免后面要的时候再算一次。 输入描述 每行一个整数 i &#xff0c;表示 Fibona…

【C++修炼之路】string 模拟实现

&#x1f451;作者主页&#xff1a;安 度 因 &#x1f3e0;学习社区&#xff1a;StackFrame &#x1f4d6;专栏链接&#xff1a;C修炼之路 文章目录 一、默认成员函数1、全缺省构造2、析构3、拷贝构造&#xff08;深拷贝&#xff09;4、赋值重载&#xff08;深拷贝&#xff09;…

Langchain 新手完全指南

Langchain 可能是目前在 AI 领域中最热门的事物之一&#xff0c;仅次于向量数据库。 它是一个框架&#xff0c;用于在大型语言模型上开发应用程序&#xff0c;例如 GPT、LLama、Hugging Face 模型等。 它最初是一个 Python 包&#xff0c;但现在也有一个 TypeScript 版本&…

Git gui教程---第五篇 Git gui的使用 查看提交历史

查看提交历史 1.点击菜单栏的“版本库”&#xff0c;选择“图示master分支的历史” 2.出现的界面就是显示当前分支的提交历史了

Java基础---Java中创建对象方式

目录 使用new关键字 使用反射机制 使用clone方法 使用反序列化 使用方法句柄 使用Unsafe分配内存 使用new关键字 这是最常见的也是最简单的创建对象的方式通过这种方式还可以调用任意的构造函数&#xff08;无参的和有参的&#xff09; 使用反射机制 运用反射手段&#…

单个电源模块带电感的直流压降仿真(一)

单个电源模块带电感的直流压降仿真(一) 下面实例分析单个电源模块带电感的直流压降仿真分析,以下图为例 具体操作如下 创建新的workspaceLoad a New/Different layout(把PCB文件加载进来)

【滑动窗口】209. 长度最小的子数组

209. 长度最小的子数组 解题思路 滑动窗口设置前后指针滑动窗口内的元素之和总是大于或者等于s滑动窗口的起始位置: 如果窗口的值大于等于s 窗口向前移动窗口结束位置:for循环的j class Solution {public int minSubArrayLen(int target, int[] nums) {int left 0;// 滑动窗口…

UDS统一诊断服务【七】DTC控制0X85服务

文章目录 前言一、DTC控制服务介绍二、数据格式2.1 请求报文2.2 子功能2.3响应格式 三、举例总结 前言 大家好&#xff0c;我是嵌入式老林&#xff0c;从事嵌入式软件开发多年&#xff0c;今天分享的内容是UDS诊断故障码控制0X85服务介绍&#xff0c;希望能对你有所帮助 一、D…