清理数据库归档日志和释放空间
公司主营业务:成都做网站、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出坊子免费做网站回馈大家。
随着企业业务的不断发展,数据库的使用频率和数据量也在不断增加。而对于数据库管理员来说,保证数据库的高效稳定运行是其最基本的职责。其中,清理数据库归档日志和释放空间是其中非常重要的一项任务。
一、数据库归档日志的作用
数据库归档日志是RDBMS自动创建的日志文件,记录了数据库中的所有操作。归档日志与Redo日志不同,Redo日志是在数据库运行时自动生成的,当数据库发生崩溃或意外宕机等异常情况时,可以利用Redo日志恢复数据。而归档日志则是在执行备份操作时才进行生成的,是备份的关键所在。
归档日志的作用主要有四个方面:
1.恢复数据:当数据库发生崩溃等异常情况时,可以利用归档日志恢复数据。
2.备份:对数据库进行备份时,需要使用归档日志记录备份时间之后的更改,从而确保备份的完整性。
3.数据库性能优化:添加或删除表空间时,需要进行归档操作,归档日志的产生就是为了记录这一操作。
4.数据备份:作为归档目录的一部分,磁盘上应保留归档的日志,以方便将来的数据备份。
二、释放空间的必要性
随着数据库不断增长,数据库的存储空间会不断被占用。如果不及时释放空间,就会导致数据库性能下降,甚至在空间被完全占满时,数据库将无法继续运行。
释放空间的方式有多种,不同的数据库软件也有不同的处理方式。一般而言,释放空间可以通过清理冗余数据、清理日志文件、清理存储过程和删除不必要的索引等方式实现。
三、清理数据库归档日志和释放空间的方法
1.清理数据库归档日志
在Oracle数据库中,归档日志占用的磁盘空间通常是比较大的。因此,对于Oracle数据库来说,清理归档日志是一个比较重要的操作。
清理方法如下:
在SQLPlus中以SYSDBA用户登录,并切换至归档模式。
ALTER SYSTEM SET log_archive_dest_state_2=OFF;
然后,清空数据库中的日志文件:
ALTER SYSTEM SWITCH LOGFILE;
启动归档操作:
ALTER SYSTEM SET log_archive_dest_state_2=ENABLE SCOPE=BOTH;
有了这些操作,就可以将归档日志文件清理干净,释放出大量的磁盘空间。
2.释放数据库空间
释放数据库空间的方法比较多,可以利用存储过程、SQL脚本等多种方式实现。
其中,一种比较简单的方法是通过删除不必要的索引来实现:
USE [YourDatabase];
GO
SELECT name,
OBJECT_NAME(object_id) AS ObjectName,
index_id,
avg_fragmentation_in_percent
FROM sys.dm_db_index_physical_stats (DB_ID(N’YourDatabase’), NULL, NULL, NULL, NULL)
WHERE avg_fragmentation_in_percent > 30
ORDER BY avg_fragmentation_in_percent DESC;
查看存在空间碎片化的索引,选择需要删除的索引,在SQL脚本中加上DROP操作即可。
在使用以上方式之前,切记在备份数据库后再进行相关操作,以避免意外数据损失。
四、
清理database归档日志和释放空间是数据库系统管理的一项非常重要的任务,可以更大限度地提升数据库的性能和稳定性。通过归档日志的清理,可以释放出大量的磁盘空间,提高数据库系统的稳定性;而释放空间,则可以避免数据库磁盘空间被耗光的风险,确保数据的正常运行。
对于一名数据库管理员来说,清理数据库归档日志和释放空间是非常重要的一项工作,也是维护数据库稳定运行的关键所在。
成都网站建设公司-创新互联,建站经验丰富以策略为先导10多年以来专注数字化网站建设,提供企业网站建设,高端网站设计,响应式网站制作,设计师量身打造品牌风格,热线:028-869222201、磁盘拦余竖毁团空间扩容。
2、全备份数据库简大,删除部分归档。(会导致无法恢复到以前的时间点)
Oracle Archive log 导致磁盘没空间了一般是要删除部分归档日志以留出更多的空间。
一、采用以下这种方法删除归档日志:
1. 进入rman
2. connect target /
3. crosscheck archivelog all;
4. delete expired archivelog all;
这时候再去OEM中看就一定看不到,如果从来没有做过这纯辩洞个动作的话,可以比较从这个动作前的controlfile后动作后的controlfile的大小。
一个ORACLE归档日志经常满,灶蔽表现为/oraarchive
这个文件空间占用100%的时候,很多人选择直接删除,ORACLE很智能,可以正确的删除归档和FLASHBACK。注意:ORACLE归档日志对于ORACLE的数据恢复和备份非常重要,不到万不得已不要删除归档日志。
二、删除归档日志的过程
以ORACLE用户身份登录到数据库服务器主机或通过网络连接
进入ORACLE数据备份工具
rman target/
或rman target/@orcl
在命令窗口里面执行
DELETE ARCHIVELOG ALL COMPLETED BEFORE ‘SYSDATE-7’;
说明:
SYSDATA-7,表明做枯当前的系统时间7天前,before关键字表示在7天前的归档日志,如果使用了闪回功能,也会删除闪回的数据。
一、背景
今天接到开发,说Oracle远程连不上了,可能是archivelog满了。我登陆Oracle试了下,提示
ORA-00257: archiver error. Connect internal only, until freed。
考虑到前些天已经扩大了硬盘空间,应该是archive log大小已经达到Oracle中对archive log大小的限制。而DBA已经放假了。因此决定清除下无用的日志同时修改下对日志大小的限制。
由升铅于我对Oracle并不熟悉,因此在完成后将整个过程记老笑拿录下来,便于以后查阅。
二、环境
RHEL 6.3 + Oracle 11gR2
三、过程
由于archive log空间满导致了不能远程登录,因此ssh到服务器后,使用sqlplus sys/pass as sysdba登陆oracle。
首先看archiv log所在位侍搭置
SQL> show parameter log_archive_dest;
会看到类似下面的结果
NAMETYPEVALUE
log_archive_dest string
log_archive_dest_ string
log_archive_dest_ string
这时候如果value是空的,可以尝试
SQL> archive log list;
然后我查看了下使用情况
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
—
CONTROLFILE .1
ONLINELOG 2.3
ARCHIVELOG 99.2
BACKUPPIECE
IMAGECOPY
FLASHBACKLOG 0
显然,已经使用了超过99%的日志空间
这时候,我直接进入flash_recovery_are的目录
cd /orace/app/oracle/flash_recovery_area/ORCL/archivelog
然后我决定先备份下相关文件
tar Jcvf arlog..tar.xz *
之一次操作时发现会提示文件在压缩过程中变化了。才想起来我没有停止Oracle服务。因此回到sqlplus先将Oracle停下来
SQL> shutdown immediate;
这个过程等待了好久才完成。。
这时候重新打包。打包过程持续了差不多两个多小时。。。
完成后,先把压缩包备份到其他目录并且scp到了一台备份文件用的服务器。然后很暴力地删除了这个文件夹下2023年的全部目录
1 rm -rf 2023_*
完成了。将数据库启动起来
sqlplus sys/pass as sysdba
SQL> startup
我之一次startup失败了,提示ORA-03113: end-of-file on communication channel。我又重新执行了下
SQL> startup mount
成功。用rman修复相关信息
rman target sys/pass
RMAN> delete expired archivelog all;
完成后,回到sqlplus修改archivelog大小
SQL> alter system set db_recovery_file_dest_size=5G scope=spfile;
修改完不会立即生效。需要重启Oracle
SQL> shutdown immediate
SQL> startup
这时候查看大小
SQL> show parameter db_recover
NAME TYPEVALUE
…
db_recovery_file_dest_sizebig integer 5G
整个过程就完成了。
关于清除数据库归档空间的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
成都网站建设选创新互联(☎:028-86922220),专业从事成都网站制作设计,高端小程序APP定制开发,成都网络营销推广等一站式服务。
当前标题:清理数据库归档日志和释放空间。(清除数据库归档空间)
文章源于:http://www.shufengxianlan.com/qtweb/news26/185126.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联