【MySQL--->数据库操作】

### 文章目录

  • [@TOC(文章目录)](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [一、操作语句](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [1.增](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [2.删](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [3.改](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [4.查](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [5.备份](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
  • [二、字符集与校验规则](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)

一、操作语句

1.增

语句格式:create database if no exists数据库名create_specification \[,create_specification ...];

中括号内是可选项,if no exists是指如果数据库不存在就创建,存在就不创建,相当于自动查重. create_specification 可以指定数据库的编码格式和校验规则.

2.删

drop database 数据库名;

3.改

alter database 数据库名 指定项;可以更改数据库指定的字符集

4.查

show databases;可查看所有数据库

use 数据库名;选定要使用的数据库

select database();查看当前在那个数据库中.

show processlist;可以查看当前谁在使用mysql;

5.备份

创建一个数据库,然后退出mysql,用命令mysqldump -P3306 -uroot -B 数据库名 > 备份文件路径.将数据备份至指定的路径下的文件中.数据库后面跟多个数据库名,可以同时备份多个数据库.如果备份的是表,则在数据库后面跟上表名即可,不过恢复的时候首先要自己创建一个数据库.-B的选项其实就是备份数据中有创建数据库的命令.

恢复时,进入mysql程序,用语句:source 备份文件路径;即可将数据恢复.数据库备份的数据其实是创建数据库时的命令,恢复数据就是将数据库的命令在当前程序中再执行一次.

二、字符集与校验规则

创建数据库时有指定字符集和校验规则的选项;字符集就是数据存储时的编码格式,校验规则就是提取数据时校验编码格式的方法;在/etc/my.cnf配置文件中有character-set-server=utf8的配置信息,就是在配置数据库模式使用的字符集.

使用show charset;可以查看支持的字符集

使用show collation;可以查看支持的校验规则.

相同的字符集,不同的校验规则,提取的数据也会不同.例如字符集utf8,校验规则utf8_general_ci;索引提取数据时不区分大写,utf8_bin;则区分大小写;

首先用相同字符集,不同的校验规则创建两个数据库,分别在两个数据库中创建两个person表

分别在两个表中插入相同的数据'a','A','B','b'

将两个表都排序,所得到的结果是不一样的,db1不区分大小写,所以A和a都排在前面,db2区分大小写,按照ascll码值比较小写全部排在大写的后面.

按照名字小写查询db1不管大小写都返回,db2只返回小写;


相关推荐
阿狗童鞋4 小时前
Redis实战指南
数据库·redis·缓存
frjc5 小时前
数据库选型:如何从众多数据库中选出最理想的那一个
redis·mysql·clickhouse·elasticsearch
lupai5 小时前
维修保养记录精准版 API 对接实战指南
数据库·python
小马哥程序开发5 小时前
[点赞收藏免费领取 · 项目源码]37399民族服饰饰品商城小程序
sql·mysql·flask·源码·课程设计·程序开发·课设
2601_952196368 小时前
计算机科学与技术专业应届生投商业分析岗,需要哪些额外能力?
数据库·oracle
皮皮学姐分享-ppx8 小时前
地级市、省级人才政策强度测算(2000-2025)
大数据·数据库·人工智能·百度·高考
晚安日记wanna8 小时前
大厂禁 JOIN 的真正原因,拆到第四层才清楚
数据库·后端·面试
java1234_小锋9 小时前
Redis 宣布正式接入 AI
数据库·人工智能·redis
这个DBA有点耶9 小时前
数据融合平台的下一代形态:数据库内核自己就能融合,为什么还要ETL?
数据库·架构·aigc
数据库小学妹9 小时前
MySQL大表怎么优化?2亿行表的分区归档与冷热分离实战
数据库·mysql·分库分表·分区表·数据库运维·冷热分离