Linux(redhat) 版Oracle 数据库维护操作
1.重启数据库服务器
1.1关数据库
su – oracle #切换到oracle用户,维保公司习惯创建一个oracle用户安装数据库
sqlplus / as sysdba #用管理员身份登陆数据库
shutdown immediate; #立即关闭数据库,sql命令以分号结束
1.2.关数据库监听
lsnrctl stop # 关闭数据库监听
lsnrctl status #查看监听程序状态
1.3.操作系统重启
reboot #重启服务器
1.4.切换用户载入环境变量(如未开机自动载入环境变量需要,否则忽略)
su – oracle #切换到oracle用户,维保公司习惯创建一个oracle用户安装数据库
source /home/oracle/.bash_profile
1.5.启动监听
lsnrctl start
1.6.启动数据库
sqlplus / as sysdba #登陆
startup #启动数据库
2.查看服务器ip地址
ip addr
3.查看分区
df -Th
4.增加表空间
4.1目录权限。
inux增加数据文件要考虑数据文件所在目录有没有oracle数据库操作的权限。一般是把安装oracle数据库的用户增加相关操作权限即可
ls –l #可以查看原先linux数据库文件所在目录的权限
返回如下:
drwxr-xr-x 2 oracle oinstall 4096 Mar 20 22:03 data
其中drwxr-xr-x 是目录的权限 oracle是目录权限所拥有的用户 oinstall是角色
chown oracle:oinstall data/
4.2 创建表空间可以用如下命令
DROP TABLESPACE DT_IMG_IDX INCLUDING CONTENTS AND DATAFILES;
CREATE TABLESPACE DT_IMG_IDX DATAFILE
'/iscsi01/data/DT_IMG_IDX.ORA' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED,
'/iscsi01/data/DT_IMG_IDX2016120301.ORA' SIZE 30000M AUTOEXTEND ON NEXT 8K MAXSIZE UNLIMITED
LOGGING
ONLINE
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;
4.3追加表空间可以用如下命令
ALTER TABLESPACE DT_IMG_DAT ADD DATAFILE 'i:\DT_IMG_DAT20171108001' SIZE 30G AUTOEXTEND ON NEXT 8K MAXSIZE UNLIMITED;
5.配置网络存储协议
oracle在nfs协议下,只能创建3g及一下的的数据文件,改为iscsi协议,解决。
6.oracle 表空间文件数量限制
错误内容:ORA-00059:超出DB_FILES的最大值
DB_FILES是oracle数据库参数可以修改。
show parameter db_files;#查看参数值,默认200;
修改参数
sqlplus /as sysdba—以数据库管理员登录
alter system set db_files=2000 scope=spfile; --修改值
shutdown immediate;--重启数据库
startup;