我们的文章会在微信公众号IT民工的龙马人生和博客网站 ( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢!
由于博客中有大量代码,通过页面浏览效果更佳。
Oracle环境中表空间全自动扩容之前的版本在添加数据文件时,统一采用1G初始大小和自动扩容的模式。有朋友反馈希望在自动扩容中能够手动输入数据文件的大小,来实现数据文件扩容到指定空间。在本次版本中新增-i参数,手动指定数据文件初始大小。-i参数支持G、M、K或者不带单位的数字输入方式,同时增加初始大小与数据文件支持最大容量的对比,如果初始容量大于数据文件最大容量时,脚本退出。在数据文件最大容量的计算是根据表空间block_size来核算的,很好的支持8K和16K等多种块大小的表空间。
最新版本的脚本使用参数如下:
[oracle@oracleadg tmp]$ ./tbscale_linux -h
Oracle Tablespace Autoscaler (Go) v0.2
For the latest version, contact phone/WeChat: 18081072613
Usage:
tbscale [flags]
Flags:
-s Specify the database ORACLE_SID (default: $ORACLE_SID)
-m Specify the database ORACLE_HOME (default: $ORACLE_HOME)
-t Tablespaces to check, comma-separated (default: ALL)
-e Tablespaces to exclude when -t=ALL, comma-separated
-d Number of days of future growth to ensure capacity for (default: 7)
-l Tablespace free space thresholds, e.g. tbs1:10,tbs2:15 (in percent). If set, -t, -e, -d are ignored.
-p Print expansion SQL only, do not execute (default: false)
-i Initial datafile size with unit (G/M/K/B), e.g. '32767M', '1G', '512K' (default: 1G)
-debug Enable DEBUG mode
-v Show script version and contact info
-h, --help, -help Show this help message and exit
Size Unit Examples:
-i 32767M # 32767 MB (maximum Oracle datafile size)
-i 1G # 1 GB
-i 512M # 512 MB
-i 1024K # 1024 KB
-i 1048576 # 1048576 bytes (no unit = bytes)
关注公众号,后台回复“脚本”二字,已经关注并回复过的就直接群里面下载即可。
温馨提醒:
请勿在业务高峰期间扩容表空间,可能会引起控制文件相关锁的争用,严重时导致集群异常。这个是数据库机制问题,而非脚本导致的。
——————作者介绍———————–
姓名:黄廷忠
现就职:Oracle中国高级服务团队
曾就职:OceanBase、云和恩墨、东方龙马等
电话、微信、QQ:18081072613
个人博客: (http://www.htz.pw)
CSDN地址: (https://blog.csdn.net/wwwhtzpw)
博客园地址: (https://www.cnblogs.com/www-htz-pw)
DBA必备工具:Oracle环境中表空间全自动扩容V0.2版本更新:等您坐沙发呢!