数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle数据库基本常用命令汇总


发布日期:2024年01月29日
 
Oracle数据库基本常用命令汇总
以下是对Oracle中的数据库基本常用命令进行了总结介绍需要的朋友可以过来参考下

得到数据库名和创建日期
SELECT name created log_mode open_mode FROM v$database;

ORACLE数据库的计算机的主机名ORACLE数据库的实例名及ORACLE数据库管理系统的版本信息
SELECT host_name instance_name version FROM v$instance;

为了知道oracle数据库版本的一些特殊信息
select * from v$version;

获取控制文件名字
select * from v$controlfile;

得到Oracle数据库的重做日志配置信息
SELECT group# members bytes status archived FROM v$log;
select GROUP#MEMBER from v$logfile;

获取oracle的每个重做日志(成员)文件所存放的具体位置
select * from v$logfile;

知道ORACLE数据库的备份和恢复策略和归档文件的具体位置
archive log list

知道ORACLE数据库中到底有多少表空间以及每个表空间的状态
select tablespace_name block_size status contents logging from dba_tablespaces;
select tablespace_name status from dba_tablespaces;

知道每个表空间存在哪个磁盘上以及文件的名字等信息
SELECT file_id file_name tablespace_name status bytes from dba_data_files;
select file_name tablespace_name from dba_data_files;

知道Oracle数据库系统上到底有多少用户和都是什么时候创建的
select usernamecreated from dba_users;
select username DEFAULT_TABLESPACE from dba_users;

从控制文件中取出信息涉及到以下一些相关的命令

复制代码 代码如下:
select * from v$archived
select * from v$archived_log
select * from v$backup
select * from v$database
select * from v$datafile
select * from v$log
select * from v$logfile
select * from v$loghist
select * from v$tablespace
select * from v$tempfile


控制文件由两大部份组成可重用的部份和不可重用的部分可重用的部分的大小可用CONTROL_FILE_RECORD_KEEP_TIME 参数来控制该参数的默认值为即可重用的部份的内容保留一周之后这部份的内容可能被覆盖可重用的部份是供恢复管理器来使用的这部份的内容 可以自动扩展Oracle数据库管理员可以使用CREAT DATABASE或 CREAT CONTROLFILE语句中的下列关键字(参数)来间接影响不可重用的部份的大小

复制代码 代码如下:
MAXDATAFILES
MAXINSTANCES
MAXLOGFILES
MAXLOGHISTORY
MAXLOGMEMBERS


查看控制文件的配置
SELECT type record_size records_total records_used FROM v$controlfile_record_section;

如果您的显示被分成了两部分您需要使用类似于set pagesize 的SQL*Plus命令先格式化输出有关的格式化输出命令有以下这些
record_size 为每个记录的字节数
records_total为该段所分配的记录个数
records_used为该段所使用的记录个数

知道控制文件中的所有数据文件(DATAFILE)表空间(TABLESPACE)和重做日志(REDO LOG)所使用的记录情况
SELECT type record_size records_total records_used
FROM v$controlfile_record_section
WHERE type IN ( ‘DATAFILE ‘TABLESPACE ‘REDO LOG);

获取控制文件名字
select value from v$parameter where name =control_files;
或者select * from v$controlfile

如何在一个已经安装的Oracle数据库中添加或移动控制文件呢?
以下是在一个已经安装的Oracle数据库中添加或移动控制文件的具体步骤

a利用数据字典v$controlfile来获取现有控制文件名字

b正常关闭Oracle数据库

c将新的控制文件名添加到参数文件的CONTROL_FILES参数中

d使用操作系统的复制命令将现有控制文件复制到指定位置

e重新启动Oracle数据库

f利用数据字典v$controlfile来验证新的控制文件名字是否正确

g如果有误重做上述操作如果无误删除无用的旧控制文件

如果您使用了服务器初始化参数文件(SPFILE)您不能关闭Oracle数据库而且应该在第步使用alter system set control_files的Oracle命令来改变控制文件的位置

复制代码 代码如下:
SQL> alter system set control_files =
‘D:\Disk\CONTROLCTL
‘D:\Disk\CONTROLCTL
‘D:\Disk\CONTROLCTL SCOPE=SPFILE;


由于控制文件是一个极其种要的文件除了以上所说的将控制文件的多个副本存在不同的硬盘上的保护措施外在数据库的结构变化之后您应立即对控制文件进行备份可以用Oracle命令来对控制文件进行备份
alter database backup controlfile to ‘D:\backup\controlbak;

您也可将备份到一个追蹤文件中该追蹤文件包含有重建控制文件所需的SQL语句可使用以下SQL语句来产生这一追蹤文件
alter database backup controlfile to trace;

正常关闭oracle命令
shutdown immeditae

上一篇:Oracle基本查询过滤排序示例解析

下一篇:Oracle数据库入门之查询基础