我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【MySQL】数据库——库操作

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【MySQL】数据库——库操作

文章目录

1. 创建数据库

格式为:CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] …]

create database 表示为 固定用法
db_name 表示为 数据库名称
[IF NOT EXISTS] 表示可选项


在终端1中,通过 mysql -uroot -p 指令,登陆数据库

再输入 show databases; 查看当前用户所能看到的数据库列表


创建终端2,并输入 cd /var/lib/mysql 指令,以此查看数据库的对应内容是否变化创建终端2,并输入 cd /var/lib/mysql 指令,以此查看数据库的对应内容是否变化


在终端1中 再次输入 create database databases1; 指令, 创建 databases1数据库
在终端2中 查看发现此时多了一个databases1目录

[IF NOT EXISTS] 的使用

create database if not exists database1;
表示 当前数据库若不存在 database1,则创建该数据库


表示 当前数据库 若存在database1,则进行告警,即数据库已经存在,没有再次创建


2. 删除库

在终端1中,输入 drop database database1; 表示 要删除 database1 数据库
在终端2中, 再次查看则没有database1数据库存在


可若删除数据库,则对应的目录也被删除了,若该目录下有表存在,则也会被直接删除
所以不建议随意删除数据库


总结: 创建数据库 —— create database db_name(数据库名称); 本质 就是在 /var/lib/mysql 创建一个目录
删除数据库 —— drop database db_name (数据库名称); 本质就是在 /var/lib/mysql 删除一个目录


3. 数据库的编码问题

创建数据库时,有两个编码集:数据库的字符集数据库的校验集

数据库的字符集 —— 数据库未来存储数据
(数据库存数据时,采用什么编码)
create database db2 charset=utf8;


数据库的校验集 —— 支持数据库,进行字段比较使用的编码,本质是读取数据库中数据的采用的编码格式
( 查找或匹配数据库,就需要进行比较字段,想要被比较,两者就需要先被读出来,此时两者的校验规则应该相同)
create database db3 charset=uf8 collate utf8_fgenral_ci;


查看系统默认支持的字符集

输入 show variables like ‘character_set_database’;
字符集数据库 默认为 utf8

查看系统默认支持的校验集

输入 show variables like ‘collation_database’;
校验集数据库 默认为 utf8mb3_general_ci

只查看 database的校验集

输入 show variables like ‘collation_%’;
只查看 database的校验集

连接 、数据库进行常规操作、服务器 的 本身的校验规则 都是 utf8

指定编码创建数据库

当在终端1中创建 d1数据库时,在终端2中的var/lib/mysql路径中就会产生对应的目录d1


打开d1目录下的db.opt文件,其中包含默认系统支持的编码集合和校验集合


修改字符集

在终端1中,创建数据库d2,并指明数据库的字符集按照 uft8格式


在终端2中,此时打开d2目录下的db.opt文件,发现 字符集按照uft8格式


使用 character set utf8 cahrset=uft8 表示相同,都可以修改 数据库的字符集 为uft8格式


修改校验集

在终端1中,创建数据库d4,并 使用 collate 将校验集 置为 utf8_general_ci
在终端2中,打开目录d4中的db.opt文件,发现 校验集按照 utf8_general_ci 格式


验证规则对数据库的影响

utf8_general_ci ——不区分大小写

使用 utf8_general_ci ,校验规则是不区分大小写的

在终端1中,创建数据库 test1, 并指明 对应的校验集 为 utf8_general_ci 格式
在终端2中,打开目录test1中的db.opt文件,发现 校验集按照 utf8_general_ci 格式


输入 use test1; 即 进入test1数据库


在test1数据库中,创建 一张表 person ,内部成员为 name,类型为 20个字节


输入 insert into person (name) values ( 字符); 即向person表中插入字符


输入 select * from person; 即查看person表中1全部数据
select 表示从表中去查
* 表示 将表中数据全部显示出来


输入 select * from person where name =‘a’; 即从person表 拿出来 name名称为 a的信息
由于test1数据库 的校验集按照utf8_general_ci 格式,不区分大小写
所以当查找a信息时,会取到peson表中的A和a


utf8_bin ——区分大小写

在终端1中,创建数据库 test2, 并指明 对应的校验集 为 utf8_bin 格式
在终端2中,打开目录test2中的db.opt文件,发现 校验集按照 utf8_bin 格式


输入 use test2; 即使用test2数据库
在test2数据库中,创建 一张表 person ,内部成员为 name,类型为 20个字节


输入 insert into person (name) values ( 字符); 即向person表中插入字符 a A b B


输入 select * from person where name =‘a’; 即从person表 拿出来 name名称为 a的信息
由于test2数据库 的校验集按照utf8_bin 格式,不区分大小写
所以当查找a信息时,只会取到peson表中的a

4. 修改数据库

输入 alter database test2 charset=gbk collate gbk_chinese_ci;
修改test2数据库的字符集为gbk
修改test2数据库的校验集为gbk_chinese_ci


在创建数据库时,所设置的创建选项

输入 show create database test2; 查看创建test2数据库时,相关的命令

5. 查看数据库

输入 show databases; 查看数据库


select database(); 判断当前在那个数据库里面
如:当前处于 数据库d1中

6. 数据库的备份和恢复

备份

在终端1中,输入 show databases; 发现 存在test1数据库


备份关键字为 mysqldump
-B 表示指明哪一个数据库
在终端2中, 将 test2数据库的历史上所有做过的有效操作备份起来了
备份到 test1.tql中


在终端1中,删除test1数据库


在终端2中,打开 var/lib/mysql 路径后,发现不存在 test1目录
但是存在 test1.tql 即test1目录的备份


恢复

此时就可以通过test1.tql ,恢复一个test1目录

在终端2中,输入 pwd 指令,查询当前路径 /var/lib/mysql


在终端1中,输入 source +test1.tql所在路径 即 source /var/lib/mysql/test1.tql

就可以使 test1.sql 中的历史命令 全部在新的mysql中执行一次


在终端1中,输入 show databases; 即又查询到test1数据库的存在


注意事项

如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据
库,再使用source来还原

7. 查看连接情况

输入 show processlist; 查看连接情况

User 表示 用户 ,即当前用户为root
db 表示数据库, 即当前连接的是test1数据库
command 表示 命令

来源地址:https://blog.csdn.net/qq_62939852/article/details/133881713

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【MySQL】数据库——库操作

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python3操作MySQL数据库

在Python3中操作MySQL数据库在Python3中使用mysql数据库需要安装pymysql库pip install pymysql操作MySQL导包import pymysql第一步:打开数据库连接db = pymysql.connect(host="
2016-12-01

python操作mysql数据库

一、数据库基本操作 1. 想允许在数据库写中文,可在创建数据库时用下面命令 create database zcl charset utf8; 2. 查看students表结构 desc students; 3. 查看创建students表
2022-06-04

Python3 操作Mysql数据库

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,而Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL
2023-01-31

python 操作MySQL数据库

1.connectdef conn(ip,user,password,database): con = mdb.connect(ip,user,password,database) cur = con.cursor() r
2023-01-31

Python 操作 MySQL数据库

开发环境与配置win_x64Ubuntu14.04Python3.xpip安装pymysql模块 直接使用pip安装 pip install pymysql win64上直接在cmd中执行 连接本地数据库使用模块pymysql连接数据库本地
2022-05-30

PHP操作MySQL数据库

PHP操作MySQL数据库的步骤如下:1. 连接数据库:使用`mysqli_connect()`函数或者`PDO`类来建立与MySQL数据库的连接。这些函数需要提供数据库服务器的地址、用户名、密码和数据库名称等信息。2. 执行SQL查询:使
2023-09-05

mysql-数据库的操作

系统数据库执行如下命令,查看系统所有的数据库mysql> show databases;+--------------------+| Database |+--------------------+| information_s
2023-01-30

PHP操作MySQL数据库

PHP操作MySQL数据库本教程介绍了使用PHP操作MySQL数据库,包括建立连接、执行查询、插入、更新、删除数据、转义特殊字符、关闭连接、使用准备语句和事务。通过清晰的示例代码,你可以轻松掌握MySQL数据库操作的基础知识。
PHP操作MySQL数据库
2024-04-10

MySQL数据库(四)数据库和表操作

4.1 连接在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码)。连接MySQL需要以下信息:主机名(计算机名)——如果连接到本地MySQL服务器,为localhost;端口(如果使用默认端口3306之外的端口);一个合法的用
MySQL数据库(四)数据库和表操作
2018-05-11

MySQL 操作数据库、数据表

通过mysql-client连接到mysql-server,sql语句要以分号结尾,这样按Enter才会执行sql语句。mysql关键字不区分大小写字符串、时间日期类型的值要引起来  数据库操作show databases; #显示已有的数据库create
MySQL  操作数据库、数据表
2016-11-30

php操作mysql(数据库常规操作)

PHP操作MySQL数据库常规操作指南本指南介绍了使用PHP操作MySQL数据库的常规操作,包括连接、查询、插入、更新、删除数据以及最佳实践。通过代码示例,您将了解如何建立连接、执行查询、管理数据和防止SQL注入攻击。这些操作是数据库开发中的基础,对于有效管理数据至关重要。遵循这些准则,您可以提升PHP与MySQL数据库交互的效率和安全性。
php操作mysql(数据库常规操作)
2024-04-26

编程热搜

目录