欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 oracle中常用的数据字典浅析 数据字典的简单分类: 按照前缀来说,数据字典分别为USER,ALL和DBA.其中,USER_*是关于用户所拥有的对象信息;ALL_*是有关用户可以访问的对象信息;DBA_*是有关整个数据库
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
oracle中常用的数据字典浅析
数据字典的简单分类:
按照前缀来说,数据字典分别为USER,ALL和DBA.其中,USER_*是关于用户所拥有的对象信息;ALL_*是有关用户可以访问的对象信息;DBA_*是有关整个数据库对象的信息。
按照范围大小来说:DBA_*包含ALL_*包含USER_*
它们的区别,我们可以使用desc user_objects,desc all_objects,desc dba_objects来比较。
1.与数据表有关的:
(1)user_tables视图:select table_name from user_tables;//查询当前用户下有多少表
(2)user_catalog视图:select table_name from user_catalog;//该视图比user_tables视图简单
2.与数据库有关的:
(1)v$database视图: select name,created,log_mode,open_mode from v$database;查询数据库的库名,创建时间,归档状态,数据库的读写状态
(2)v$instance视图:SQL> select host_name,instance_name,version from v$instance;查询系统的主机名,实例名,和数据库版本
(3)v$version视图: select * from v$version;查询数据库版本的详细信息
3.与控制文件有关的
(1)v$controlefile:select name from v$controlfile;查询控制文件的路径
4.与日志有关
(1)v$log:select group#,members,bytes,status,archived from v$log;查询重做日志的组号,成员个数,文件大小,状态,是否归档
(2)v$logfile:select group#,status,type,member from v$logfile;查询日志文件的组号,状态,类型,文件类型
5.与表空间有关的
(1)dba_tablespaces:select tablespace_name,block_size,status,contents,logging from dba_tablespaces;查询数据库所有表空间的空间名,块大小,状态,类型,是否写入日志。
(2)dba_data_files:select tablespace_name,status,bytes,file_name from dba_data_files;查询表空间的名称,状态,大小和文件名
(3)database_properties: select * from database_properties where property_name like 'DEFAULT%';查询数据库默认临时表空间,默认永久表空间。
(4)v$datafile:select name,status from v$datafile where name like '%jinlian%';查看数据文件的状态(是否在线)
6.与用户有关的
(1)dba_users: select username from dba_users;查询数据库中有多少用户
(2)tab:select tname,tabtype from tab;查询当前用户下的对象和对象类型。
7.v$parameter视图:
这个视图一般用于查询一些文件的路径。例如:
select value from v$parameter where name='control_files';
8.与锁有关的视图:
v$lock:select sid,type from v$lock where block=1;查询当前正在阻塞的锁的事务的sid以及锁类型.
9.与undo 段有关的
(1)show parameter undo:显示undo信息
(2)dba_segments:select segment_name,tablespace_name,bytes from dba_segments
where segment_type='ROLLBACK'
查询段类型为ROLLBACK的段名,表空间名,字节大小
(3)select segment_name,tablespace_name,bytes from dba_segments
where segment_type='TYPE2 UNDO'
查询回滚表空间中回滚段的信息
(4)v$rollname: select usn,name from v$rollname;查询所有的回滚段名及序号
(5)v$rollstat:select a.usn,a.name,b.extents,b.status from v$rollname a,v$rollstat b where a.usn=b.usn
查询回滚段的详细信息
(6)dba_undo_extents:select tablespace_name,status,sum(bytes)/1024/1024 from dba_undo_extents
group by tablespace_name,status
查询undo表空间中过期数据和没有过期数据的信息。

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

WebStorm Mac version
Useful JavaScript development tools

Dreamweaver CS6
Visual web development tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Chinese version
Chinese version, very easy to use
