当前位置: 首页 > ai >正文

MySQL——数据库基础操作

        学习MySQL之前,要先配置好相关环境与软件下载,怎么就不展开了:找找网上对应环境下的教程即可

目录

数据库与MySQL

案例使用

MySQL架构

SQL指令分类 

储存引擎

库操作 

创建数据库

编码集与校验规则

校验规则的影响

删除数据库

数据库的备份与恢复

查看数据库

修改数据库

数据库连接

表操作

创建表

删除表

查看表

修改表


数据库与MySQL

        数据库是专家们设计出来的一种方便管理数据的东西;mysql指的是一套给我提供数据存储的网络程序

        具体的来讲:数据库一般指的是在磁盘或内存中存储的特定结构组织的数据,将来在磁盘中存储的一套数据方案;而mysql是基于C(client)S(service)模式的网络服务,mysql是客户端,mysqld是服务端;

        三者的关系:用户通过mysql语句发起请求,mysqld收到用户的请求后进行处理:在磁盘中对数据库进行操作,处理完将结果返回给用户;在这个过程中用户只是间接对数据库操作,mysqld才是那个直接对数据库操作

        但是可能你要说:储存数据用文件就可以了,为什么还要弄个数据库?

        一般文件确实提供了数据的储存功能,但是当数据量很大时用户不能很好地进行管理,也就是文件没有提供很好的数据管理能力,而数据库提供了一套对数据的管理方案:你给我字段或者要求(mysql),我帮你处理后给你返回结果(mysqld)

        具有一定的数据库水平也是程序员能力的指标之一,也说明了它的重要性

案例使用

        在数据库中创建一个新的数据库并创建数据库表,最后把插入的结果打印出来

MySQL架构

        MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、Windows、Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。

SQL指令分类 

  • DDL【data definition language】 数据定义语言,用来维护存储数据的结构,代表指令: create, drop, alter
  • DML【data manipulation language】 数据操纵语言,用来对数据进行操作,代表指令: insert,delete,update
  • DML中又单独分了一个DQL,数据查询语言,代表指令: select
  • DCL【Data Control Language】 数据控制语言,主要负责权限管理和事务,代表指令: grant,revoke,commit

储存引擎

        指的是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。

        MySQL的核心就是插件式存储引擎,支持多种存储引擎

        六种储存引擎对比 

库操作 

创建数据库

         在mysql创建新的数据库的过程就是在 /var/lib/mysql 目录下创建新的目录的过程;但你打死也不要就直接在该路径下创建目录,而是应该通过mysql语句来创建~

        创建数据库的语句还可以指定创建的数据库是否存在,不存在创建,存在就不创建

        下次不要创建出来的数据库时我们就可以使用mysql语句进行删除,本质上也是在 /var/lib/mysql 路径下删除目录

编码集与校验规则

        创建数据库时有两个编码集:数据库编码集(字符集)与数据库校验集,编码集是未来储存数据时所采用的编码方式(如utf-8),而校验集则是字段比较时使用的编码,本质上也是读取数据库时所采用的编码方式;数据库无论对数据作如何操作,都必须保证两者的一致性;

        两者就类似C语言中:用int a 变量储存某个值;下次我要拿它进行赋值时所用到的变量只能是int 类型而不是其它类型

        查看mysql默认的编码集与校验集(是utf8就说明使用操作是支持中文格式)

        (我)创建新的数据库时默认就是使用以上两种进行创建操作,你那边可能不一样,因为我在下载完mysql时已经在 /etc/my.cnf 文件中配置过了

        如果不想使用默认的编码集与校验集,我们在创建时可以自己来指定

校验规则的影响

        但创建数据库时使用的校验规则为:utf8_general_ci 时(不区分大小写),此时在数据库中创建表,创建变量后找'a'时它会把大小写都给我们返回

        创建新的数据库使用别的校验规则:utf8_bin(区分大小写),只会把‘a’字符返回

删除数据库

        不建议直接删除数据库,数据库通常保存着用户数据,删除后里面的全部数据都将被清空,很难再继续恢复,所以删除数据库之前建议先备份;

数据库的备份与恢复

        虽然在Linux系统上创建一个数据库是在 /var/lib/mysql 路径上创建一个新目录,进行备份使用复制指令cp就能进行备份,但不建议这么做,这么备份可能由于版本原因在别的系统上导入时有各种报错,推荐使用mysql自带的语句进行数据库的备份与恢复

备份指令

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

如果要备份多个数据库就直接在数据库名后面再加即可;如果不加 -B 进行备份数据库,后面想恢复时就要先在mysql create 数据库,use 后再执行恢复语句!这也是间接地把数据库名更改的操作

如果备份的是数据库的表,则备份指令如下

mysqldump -u root -p 数据库名 表名1 表名2... > 备份文件路径

恢复语句

source 文件路径;

查看数据库

修改数据库

        主要修改的是数据库的字符集或者校验规则,修改数据库名在老版本下可以修改,但大部分的情况下数据库名都修改不了:避免上层在使用数据库时你把名字给改了,上层找不到数据库而发生报错

数据库连接

        想看看数据库有多少人连接

表操作

创建表

        创建表之前先要进入指定的数据库后进行创建

        其中)后可以指定字符集,校验规则,储存引擎;不指定就使用默认配置的,创建完表的操作就是在对应的数据库目录中创建新文件

删除表

查看表

        查看表之前先要确定自己是否在查看表的数据库中,不是就要 use 进入指定数据库中

修改表

       对表的修改有以下操作:

       表名重命名

        表中添加字段

        表中删除字段,注意表中原有该删除字段的数据都会被删除,没事时不要轻易修改

        表中修改字段时修改的是字段类型

        表中修改字段时修改的是字段

以上便是全部内容,有问题欢迎在评论区指正,感谢观看!

http://www.xdnf.cn/news/3905.html

相关文章:

  • 蓝桥杯单片机国赛模板——基于柳离风模板
  • Scratch
  • [Linux]物理地址到虚拟地址的转化
  • socket,http
  • NOI 2025 大纲更新:算法竞赛的新风向标
  • ComfyUI学习笔记,案例四:inpaint
  • 2025 年最新树莓派 Pico 连接 OLED 显示字模汉字详细教程
  • 数字社会学家唐兴通谈数字行动主义网络行动主义与标签行动主义,理解它才算抓住AI社会学与网络社会学关键所在
  • 电路研究9.3.3——合宙Air780EP中的AT开发指南:HTTP(S)-HTTP GET 示例
  • Model Context Protocol (MCP)笔记
  • 如何用git将项目上传到github
  • C++入门(上)--《Hello C++ World!》(1)(C/C++)
  • Android设备运行yolov8
  • 自注意力(Self-Attention)和位置编码
  • Spring 中 @Value 注解实现原理
  • Vim 命令从头学习记录
  • 笔记本电脑升级计划(2017———2025)
  • JavaScript 笔记 --- part8 --- JS进阶 (part3)
  • 【NLP】32. Transformers (HuggingFace Pipelines 实战)
  • 全球化电商平台Azure云架构设计
  • 【计网】交换机和集线器对比
  • java学习之数据结构:四、树(代码补充)
  • 【Spring Boot】Spring Boot + Thymeleaf搭建mvc项目
  • flink rocksdb状态说明
  • 阿里云物联网平台--云产品流传
  • 7、Activiti-任务类型
  • 如何快速获取字符串的UTF-8或UTF-16编码二进制数据?数值转换成字符串itoa不是C标准?其它类型转换成字符串?其它类型转换成数值类型?
  • 虚幻引擎作者采访
  • 2.在Openharmony写hello world
  • 蓝桥杯 18. 积木