运维1.8掌握关系型数据库的基本知识,如 MySQL、PostgreSQL

目录

  • 什么是关系型数据库
  • MySQL基础知识
    • 安装和配置
    • 数据类型
    • 数据库操作
    • 数据表操作
    • 数据查询操作
  • PostgreSQL基础知识
    • 安装和配置
    • 数据类型
    • 数据库操作
    • 数据表操作
    • 数据查询操作

什么是关系型数据库

关系型数据库是以关系模型为基础,使用表格来表示和存储数据的数据库系统。其中,表格中每一行表示一个记录,每一列表示一个属性。

关系型数据库具有以下特点:

  • 结构化数据:数据以表格的形式存储,并且具有固定的结构。
  • 数据类型:表格中的每一列都有一个预定义的数据类型,比如整型、字符型、日期型等。
  • 数据的关系:不同表格之间可以建立关系,比如主键-外键关系,从而实现数据的关联。
  • SQL语言:可以使用SQL语言来进行数据操作,包括增、删、改、查等。

常用的关系型数据库包括MySQL、PostgreSQL、Oracle、Microsoft SQL Server等。

MySQL基础知识

安装和配置

MySQL的安装可以通过官方网站下载安装包进行安装,也可以通过包管理工具进行安装。

安装完成后,需要进行一些基本的配置,比如设置root用户的密码、开启远程访问等。

数据类型

MySQL支持多种数据类型,包括整型、浮点型、日期型、字符串型等。以下是一些常用的数据类型:

  • INT:整型,可以存储范围在-2147483648到2147483647之间的整数。
    FLOAT:浮点型,可以存储范围在-3.402823466E+38到3.402823466E+38之间的浮点数。
    DATE:日期型,可以存储日期数据,格式为YYYY-MM-DD。
    VARCHAR:可变长字符串型,可以存储可变长度的字符串数据,最大长度为65535。

数据库操作

在MySQL中,可以使用以下命令进行数据库的操作:

  • 创建数据库:CREATE DATABASE <数据库名>;
    删除数据库:DROP DATABASE <数据库名>;
    切换数据库:USE <数据库名>;
    显示数据库列表:SHOW DATABASES;

数据表操作

在MySQL中,可以使用以下命令进行数据表的操作:

  • 创建数据表:CREATE TABLE <表名> (<列名> <数据类型>, ...);
    删除数据表:DROP TABLE <表名>;
    修改数据表:ALTER TABLE <表名> <操作>;
    查询数据表:SELECT <列名> FROM <表名>;

数据查询操作

在MySQL中,可以使用SELECT语句进行数据查询操作,例如

SELECT <列名> FROM <表名> WHERE <

数据库备份和恢复

在数据库运营过程中,备份和恢复是非常重要的一环。在数据库的备份过程中,需要将数据库中的数据复制到其他地方,以备份为未来的灾难恢复做准备。而在出现故障时,可以利用备份进行恢复,保证数据库的可用性。

在 MySQL 中,备份和恢复的方法有很多种,下面介绍两种常用的方法:

4.1. 备份和恢复 MySQL 数据库

备份 MySQL 数据库的方法有很多种,比较常见的有使用 mysqldump 命令和直接复制数据库文件两种方法。

4.1.1. 使用 mysqldump 命令备份

mysqldump 命令可以将 MySQL 数据库备份到文件中,使用时需要指定要备份的数据库、备份文件的路径、备份的用户名和密码等参数。

 
 

cssCopy code

mysqldump -u root -p --databases dbname > backup.sql

其中,-u 参数指定要备份的用户名,-p 参数表示要输入密码,--databases 参数指定要备份的数据库,> 表示将备份结果输出到文件中。

恢复备份文件时,可以使用以下命令:

 
 

cssCopy code

mysql -u root -p dbname < backup.sql

其中,-u 参数指定要恢复的用户名,-p 参数表示要输入密码,< 表示从文件中读取备份数据。

4.1.2. 直接复制数据库文件备份

MySQL 的数据文件通常存储在 /var/lib/mysql 目录下,直接备份这个目录下的所有文件即可。

恢复备份时,只需将备份的数据文件替换掉原来的数据文件即可。

4.2. 备份和恢复 PostgreSQL 数据库

备份 PostgreSQL 数据库的方法与 MySQL 类似,同样有使用 pg_dump 命令和直接复制数据库文件两种方法。

4.2.1. 使用 pg_dump 命令备份

pg_dump 命令可以将 PostgreSQL 数据库备份到文件中,使用时需要指定要备份的数据库、备份文件的路径、备份的用户名和密码等参数。

 
 

Copy code

pg_dump -U username -d dbname > backup.sql

其中,-U 参数指定要备份的用户名,-d 参数指定要备份的数据库,> 表示将备份结果输出到文件中。

恢复备份文件时,可以使用以下命令:

 
 

Copy code

psql -U username -d dbname < backup.sql

其中,-U 参数指定要恢复的用户名,-d 参数指定要恢复的数据库,< 表示从文件中读取备份数据。

4.2.2. 直接复制数据库文件备份

索引是用于快速访问数据库表中数据的一种数据结构,通过在表上创建索引,可以让数据库系统不必扫描整个表,而是直接定位到符合条件的数据。

在关系型数据库中,一个表可以有多个索引,每个索引可以包含一个或多个列。索引可以大大提高查询效率,但同时也会降低数据的维护性,因为每次修改表中的数据都需要同步更新索引。

9.2 索引的种类

  • 主键索引:主键索引是一种特殊的唯一索引,它要求索引列的值唯一。每个表只能有一个主键索引。
  • 唯一索引:唯一索引要求索引列的值唯一,但是允许空值。
  • 普通索引:普通索引没有唯一性要求,可以包含重复的值和空值。
  • 全文索引:全文索引用于快速搜索表中的文本数据,如文章、新闻等。
  • 复合索引:复合索引是由多个列组成的索引,可以提高多个列联合查询的效率。

9.3 索引的创建

在 MySQL 中,可以通过 CREATE INDEX 语句来创建索引。语法如下:

 
 

sqlCopy code

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name ON table_name(column_name1, column_name2, ...)

其中,UNIQUEFULLTEXTSPATIAL 分别代表唯一索引、全文索引和空间索引。index_name 为索引名称,table_name 为表名,column_name1column_name2 等为索引列名,可以指定多个列名以创建复合索引。

9.4 索引的优化

索引的优化需要考虑到查询的效率和维护的成本,常见的优化策略包括:

  • 在经常用于查询的列上创建索引,可以提高查询的效率。
  • 避免使用 SELECT * 查询全部列,因为这样会降低查询效率,并增加数据库的负担。
  • 避免在索引列上使用函数、表达式或类型转换,这样会导致无法使用索引,降低查询效率。
  • 在进行数据修改操作时,尽量避免更新索引列的值,因为这样会导致索引的维护成本增加。

10. 数据库备份和恢复

10.1 备份和恢复的概念

数据库备份是指将数据库的数据、元数据和配置信息等保存到一个备份文件中,以便在发生灾难性故障

猜你喜欢

转载自blog.csdn.net/m0_58782029/article/details/129751276