SQL语言数据库的维护规则和操作方法

SQL语言数据库的维护规则和操作方法

第 2 部分 数据库 SQL 语言

数据库维护

对于一些大型软件产品,一旦商业化,必然会存储大量的用户信息,这给产品所使用的数据库(以下简称业务数据库)带来压力。 为了保证业务数据库的顺利运行,在日常工作中需要对数据库进行一些基本的维护操作。

业务数据库的维护规则如下:

1、必须定期对业务数据库进行全量备份

定期备份业务数据库,可以在数据库意外损坏时快速恢复。 备份策略根据数据增量的大小可以采用周计划或月计划。

如果备份数据库db_100,在Oracle、Sybase、SQL Server中的操作如下:

(1)Oracle用户态备份

exp db_100/db_100 所有者=db_100 缓冲区=8192(或 64000)

file=exp_db100.dmp(或磁带设备 /dev/rmt0)

表=

行=y

压缩=n

日志= exp_db100.log

参数说明:

所有者:要卸载的用户名列表。

缓冲区:缓冲区大小。

file:导出创建的输出文件的名称。

tables:要卸载的表名列表。

rows:表示是否卸载表数据的行数。 默认为“y”。

compress:加载时是否将表数据压缩到某个区域。 如果卸载数据时指定参数compress=y,则加载时数据将被压缩到初始区域。 此选择保持初始化区域的原始大小。 默认为“y”。

log:指定一个文件来接收有用信息和错误消息。

(2)Sybase数据库的备份

使用 /home/data/db100.dmp(或磁带设备 /dev/rmt0)转储数据库 db_100

(3) SQL Server数据库的备份

使用大师

执行 sp_addumpdevice '磁盘', 'dev_db100',

磁盘='C:\backup\dev_db100.dat'

将数据库 db_100 备份到 dev_db100

2、定期对业务数据库进行数据清理游戏开发 数据库3D交通工具,清理前必须完成备份操作。

对于每天有大量记录的日志表采用备份表机制,即建立与生产表结构相同的备份表,并根据需要确定生产表和备份表的保留时间项目的。

假设1000号业务需要处理主日志生产表tb_mainlog。 要求是生产表保留2天的记录游戏开发 数据库,备份表保留90天的记录。 过滤日期的字段名为startdatetime,批量提交间隔为60分钟。 有一个存储过程 pr_backuptable 是用来备份的,所以只需要调用它,如下:

exec pr_backuptable 'tb_mainlog','tb_mainlog_bak',2,90,'startdatetime','yyyy.mm.dd hh:mi:ss',60,''

参数说明:

参数1:生产表名称

参数2:备份表名

参数3:生产表保留天数

参数4:备份表保留天数

参数5:过滤日期字段名称

参数6:过滤日期字段的格式

参数7:批量提交的时间间隔(单位:分钟)

参数8:扩展比较条件

3、如果数据库没有设置截断日志(或者不归档模式),则需要定期维护数据库日志

Oracle日志归档模式的设置一般需要在安装时进行; Sybase数据库的“trunc log on chkpt”选项设置为true,或者该选项设置为false,则需要定期截断数据库日志; 将 SQL Server 数据库选项“autoshrink”设置为 true。

(1)设置Oracle数据库日志为非归档模式

步骤是:

1)关闭数据库

2)按照启动挂载方式启动实例

3)切换模式

更改数据库 noarchivelog;

改变数据库打开;

(2)在Sybase中将数据库db_100中的“trunc log on chkpt”设置为true

使用大师

sp_dboption db_100,'在 chkpt 上截断日志',true

使用db_100

检查站

(3) 在SQL Server中将数据库db_100中的“autoshrink”设置为true

sp_dboption db_100,'自动收缩',true

4.定期维护数据库索引

对于Sybase和SQL Server数据库,表中的索引必须定期更新并维护统计信息。 如果索引失败,则重建索引。

例如,要更新 tb_userinfo 表中所有索引中所有列的统计信息,请使用以下语句:

更新索引统计信息 tb_userinfo

5、定期检查数据库任务的运行结果日志以及数据库的最大可用空间

在数据库操作过程中,应经常查看日志,查看相关任务的运行结果是否正常2d素材,并检查数据库的剩余空间。 如果可用空间已经很小,则必须执行某些文件清理操作。

6、对数据库进行大规模增删改操作后,建议检查表的一致性并重建索引。

在大规模操作过程中,数据表的结构可能会被无意中破坏,因此需要在操作完成后对表进行一致性检查。 如果发现表结构异常,则需要重建表和相应的索引。

在一些商业软件产品中,数据维护是一项复杂、艰巨、长期的工作,相关的维护经验只能在实际操作中积累。

文章来源:https://m.php.cn/article/127532.html