Oracle 学习记录
2012-05-18 09:28
183 查看
数据字典
每个Oracle数据库包括一个被称为“元数据”的集合,或者说包含用来描述数据库有关数据结构的数据。包含这些元数据的表和视图称为Oracle数据字典。
数据字典中有前缀V$或GV$的表是动态表,它们会不断更新以反映出Oracle数据库当前的状态。静态数据字典表都有一个形如DBA_、ALL_或USER_的前缀,表示该视图中列出的对象范围。
数据库组件 数据库字典中的表和视图
数据库 V$DATABASE
表空间 DBA_TABLESPACE,DBA_DATA_FILES,DBA_FREE_SPACE
控制文件 V$CONTROLFILE,V$PARAMETER,V$CONTROLFILE_RECORD_SECTION
数据文件 V$DATAFILE,V$DATAFILE_HEADER,V$FILESTAT,DBA_DATA_FILES
段 DBA_SEGMENTS
数据范围 DBA_EXTENTS
日志线程、日志组和 V$THREAD,V$LOG,V$LOGFILE
日志序列号
归档状态 V$DATABASE,V$LOG,V$ARCHIVED_LOG,V$ARCHIVE_DEST
数据库实例 V$INSTANCE,V$PARAMETER,V$SYSTEM_PARAMETER
内存结构 V$SGA,V$SGASTAT,V$DB_OBJECT_CACHE,V$SQL,V$SQLTEXT,V$SQLAREA
后台进程 V$BGPROCESS,V$SESSION
oracle查询用户信息
1. 查询oracle中所有用户信息
select * from dba_users;
2. 只查询用户和密码
select username,password from dba_users;
3. 查询当前用户信息
select * from dba_ustats;
4. 查询用户可以访问的视图文本
select * from dba_varrays;
5. 查询数据库中所有视图的文本
select * from dba_views;
查看当前用户的缺省表空间
select username,default_tablespace from user_users
查看当前用户的角色
select * from user_role_privs
查看当前用户的系统权限和表级权限
select * from user_sys_privs
select * from user_tab_privs
查看用户下所有的表
select * from user_tables
显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace from dba_users
显示当前会话所具有的权限
select * from session_privs
显示指定用户所具有的系统权限
select * from dba_sys_privs
显示特权用户
select * from v$pwfile_users
查看名称包含log字符的表
select object_name,object_id from user_objects where instr(object_name,'log')>0
查看某表的创建时间
select object_name,created from user_objects where object_name='ZW_YINGYEZ'
查看某表的大小
select sum(bytes)/(1024*1024) tablesize from user_segments
where segment_name='ZW_YINGYEZ'
查看放在ORACLE的内存区里的表
select table_name,cache from user_tables where instr(cache,'Y')>0
查看索引个数和类别
select index_name,index_type,table_name from user_indexes order by table_name
查看索引被索引的字段
select * from user_ind_columns where table_name='CB_CHAOBIAOSJ201004'
查看索引的大小
select sum(bytes)/(1024*1024) as indexsize from user_segments
where segment_name=upper('AS_MENUINFO')
查看视图信息
select * from user_views
查看同义词的名称
select * from user_synonyms
查看函数和过程的状态
select object_name,status from user_objects where object_type='FUNCTION'
select object_name,status from user_objects where object_type='PROCEDURE'
查看函数和过程的源代码
select text from all_source where owner=user and name='SF_SPLIT_STRING'
查看表字段
select cname from col where tname='ZW_YINGYEZ'
select column_name from user_tab_columns where table_name='ZW_YINGYEZ'
***************************************************************************************
##########启动oracle
1.linux下启动oracle
startup
2. linux下关闭oracle
shutdown immediate
3、启动监听器
> lsnrctl start
4、停止监听器
> lsnrctl stop
5、查看监听器状态
> lsnrctl
LSNRCTL> status
LSNRCTL> exit
误删数据库表空间解决办法:
sqlplus /nolog
conn /as sysdba
startup
alter tablespace XXX offline;
alter database datafile 'xxx.dbf' offline drop;
alter database open;
*************************************************************************************
每个Oracle数据库包括一个被称为“元数据”的集合,或者说包含用来描述数据库有关数据结构的数据。包含这些元数据的表和视图称为Oracle数据字典。
数据字典中有前缀V$或GV$的表是动态表,它们会不断更新以反映出Oracle数据库当前的状态。静态数据字典表都有一个形如DBA_、ALL_或USER_的前缀,表示该视图中列出的对象范围。
数据库组件 数据库字典中的表和视图
数据库 V$DATABASE
表空间 DBA_TABLESPACE,DBA_DATA_FILES,DBA_FREE_SPACE
控制文件 V$CONTROLFILE,V$PARAMETER,V$CONTROLFILE_RECORD_SECTION
数据文件 V$DATAFILE,V$DATAFILE_HEADER,V$FILESTAT,DBA_DATA_FILES
段 DBA_SEGMENTS
数据范围 DBA_EXTENTS
日志线程、日志组和 V$THREAD,V$LOG,V$LOGFILE
日志序列号
归档状态 V$DATABASE,V$LOG,V$ARCHIVED_LOG,V$ARCHIVE_DEST
数据库实例 V$INSTANCE,V$PARAMETER,V$SYSTEM_PARAMETER
内存结构 V$SGA,V$SGASTAT,V$DB_OBJECT_CACHE,V$SQL,V$SQLTEXT,V$SQLAREA
后台进程 V$BGPROCESS,V$SESSION
oracle查询用户信息
1. 查询oracle中所有用户信息
select * from dba_users;
2. 只查询用户和密码
select username,password from dba_users;
3. 查询当前用户信息
select * from dba_ustats;
4. 查询用户可以访问的视图文本
select * from dba_varrays;
5. 查询数据库中所有视图的文本
select * from dba_views;
查看当前用户的缺省表空间
select username,default_tablespace from user_users
查看当前用户的角色
select * from user_role_privs
查看当前用户的系统权限和表级权限
select * from user_sys_privs
select * from user_tab_privs
查看用户下所有的表
select * from user_tables
显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace from dba_users
显示当前会话所具有的权限
select * from session_privs
显示指定用户所具有的系统权限
select * from dba_sys_privs
显示特权用户
select * from v$pwfile_users
查看名称包含log字符的表
select object_name,object_id from user_objects where instr(object_name,'log')>0
查看某表的创建时间
select object_name,created from user_objects where object_name='ZW_YINGYEZ'
查看某表的大小
select sum(bytes)/(1024*1024) tablesize from user_segments
where segment_name='ZW_YINGYEZ'
查看放在ORACLE的内存区里的表
select table_name,cache from user_tables where instr(cache,'Y')>0
查看索引个数和类别
select index_name,index_type,table_name from user_indexes order by table_name
查看索引被索引的字段
select * from user_ind_columns where table_name='CB_CHAOBIAOSJ201004'
查看索引的大小
select sum(bytes)/(1024*1024) as indexsize from user_segments
where segment_name=upper('AS_MENUINFO')
查看视图信息
select * from user_views
查看同义词的名称
select * from user_synonyms
查看函数和过程的状态
select object_name,status from user_objects where object_type='FUNCTION'
select object_name,status from user_objects where object_type='PROCEDURE'
查看函数和过程的源代码
select text from all_source where owner=user and name='SF_SPLIT_STRING'
查看表字段
select cname from col where tname='ZW_YINGYEZ'
select column_name from user_tab_columns where table_name='ZW_YINGYEZ'
***************************************************************************************
##########启动oracle
1.linux下启动oracle
startup
2. linux下关闭oracle
shutdown immediate
3、启动监听器
> lsnrctl start
4、停止监听器
> lsnrctl stop
5、查看监听器状态
> lsnrctl
LSNRCTL> status
LSNRCTL> exit
误删数据库表空间解决办法:
sqlplus /nolog
conn /as sysdba
startup
alter tablespace XXX offline;
alter database datafile 'xxx.dbf' offline drop;
alter database open;
*************************************************************************************
相关文章推荐
- oracle学习记录之十八
- Oracle学习记录1(单行函数,多行函数)
- Oracle学习记录2(多表查询)
- ORACLE 表空间学习记录
- 好记性不让烂笔头!oracle学习记录一!
- Oracle学习网址记录
- oracle学习记录之十五
- [学习记录] oracle:安装过程
- Oracle学习记录
- Oracle 学习记录
- Oracle 学习记录
- oracle学习记录之授权(1)
- oracle学习记录之五--第8讲
- Oracle-记录学习
- oracle学习记录之错误
- oracle学习记录之六
- Oracle基础学习记录
- Oracle学习记录1(单行函数,多行函数)
- Oracle学习记录2(多表查询)
- oracle学习之路(二)------数组类型/记录类型的使用