Oracle数据库管理:启动方法、数据字典查询与导出技巧解析
创始人
2024-12-28 08:45:06
0 次浏览
0 评论
oracle中用什么命令查找数据文件所在路径呢?
一、启动和关闭ORACLE1、在单机环境下,如果要启动或关闭ORACLE系统,必须先切换到ORACLE用户,如下:su-oraclea。启动ORACLEoracle系统。
>svrmgrlSVRMGR>连接内部SVRMGR>启动SVRMGR>退出b.关闭系统oracleORACLE>svrmgrl
SQL>connect/assysdba连接到一个实例。
SQL>startup^CSQL>startORACLEinstancestarted2、在双机环境下,如果要启动或关闭ORACLE系统,必须先切换到root用户,例如:之后:su-roota。
启动ORACLE系统hareg-yooracleb.关闭ORACLE系统hareg-noracleOracle数据库的启动方法有哪些:有以下几种启动方法:1.Startupnomount无需安装启动,启动时可以执行此方法:重建控制文件、重建读数据库获取init。
ora文件并启动实例,即启动SGA和后台进程。
这种类型的启动仅需要init.ora文件。
2.Startupmountdbname安装过程开始。
通过这种方式,您可以执行以下操作:归档数据库日志、恢复数据库介质、使数据文件联机或脱机、重定位数据文件和重做日志文件。
执行“nomount”,然后打开控制文件并在线确认数据文件和日志文件的位置,但此时不会验证数据文件和日志文件。
3.startupopendbname首先执行“nomount”,然后执行“mount”,然后打开所有数据库文件包括Redolog文件。
这样就可以访问数据库中的数据了。
4.启动,用以下三个命令:startupnomount、changedatabase、openchangedatabase5.有限模式启动,restricted这种方式可以启动数据库,但只允许启动一个数据库。
当特权用户访问和非特权用户访问时,出现如下提示:ERROR:ORA-01035:ORACLEisonlyallowedtobeusingbyuserswithLIMITEDPermissions6.startupforce强制启动模式当数据库无法关闭时,您可以使用可以使用pforcestartup来完成数据库的关闭。
首先关闭数据库,然后执行正常的数据库启动命令。
7.startuppfile=参数文件名。
带初始化参数文件的启动方法首先读取参数文件,然后相应地启动数据库。
到参数文件中的设置示例:startuppfile=E:Oracleadmi.noradbpfileinit.ora八、启动独家2、用户如何有效地使用数据字典ORACLE的数据字典是数据库的重要组成部分之一。
它是随着数据库创建而创建的,并根据数据库的变化而变化材料。
在用户sys的一些表和视图中。
数据字典名称为大写英文字符。
数据字典存储用户信息、用户权限信息、所有数据对象信息、表约束、统计分析数据库视图等。
我们无法手动修改数据字典中的信息。
很多时候普通ORACLE用户不知道如何有效地使用它。
dictionary所有数据字典表的名称及解释,它有一个同义词dictdict_column所有数据字典表中的字段名称及解释如果要查询与索引项相关的数据字典,我们可以使用以下SQL语句:SQL>select*fromdictionary其中tr(comments,'index')>0;如果我们想知道user_indexes表中各个字段名的详细含义,可以使用下面的SQL语句:SQL>selectcolumn_name,commentsfromdict_columnswheretable_name='USER_INDEXES';同样的,你不用再看别的ORACLE文档,就可以轻松知道数据字典的详细名称和解释。
下面按类别列出了一些ORACLE用户常用的数据字典查询方法。
1、用户查看当前用户的默认表空间SQL>selectusername,default_tablespacefromuser_users;查看当前用户的角色SQL>select*fromuser_role_privs;查看当前用户的系统权限和表级权限SQL>select*f;romuser_sys_privs;SQL>select*fromuser_tab_privs;2、Tables查看用户下所有表SQL>select*fromuser_tables;其中str(object_name,'LOG')>0;查看表创建时间SQL>selectobject_name,createdfromuser_objectswhereobject_name=upper('&table_name');查看表大小SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segments:wheresegment_name=upper('&table_name');查看位于ORACLE内存区域的表SQL>selecttable_name,cachefromuser_tablesw其中str(cache,'Y')>0;3.Indexes查看索引号和类别SQL>selectindex_name,index_type,table_namefromuser_indexesorderbytable_name;ind_columnswhereindex_name=upper('&index_name');查看索引的大小SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segmentswhichsegment_name=upper('&index_name');4.SerialNumber查看序列号,Last_number为当前值SQL>select*fromuser_sequences;5.视图视图的视图名称SQL>selectview_namefromuser_views;ame,来自用户视图的文本长度;SQL>setlong2000;说明:setlong的大小可以通过视图的text_length值来设置SQL>selecttextfromuser_viewswhereview_name=upper('&view_name');查看同义词名称SQL>select*fromuser_synonyms7.约束查看表约束SQL>selectconstraint_name,constraint_type,search_condition,r_constraint_namefromuser_constraintswheretable_name=upper('&table_name');SQL>selectc.constraint_name,c.constraint_type,cc.column_namefromuser_constraintsc,user_cons_columnscc其中c.owner=upper('&table_owner')andc.table_name=upper('&table_name')andc.owner=cc.ownerandc.constraint_name=cc.constraint_nameorderbycc.position8.存储函数和过程;查看函数和过程的状态SQL>selectobject_name,statusfromuser_objectswhereobject_type='FUNCTION'SQL>selectobject_name,statusfromuser_objectswhereobject_type='PROCEDURE;';查看源代码SQL函数和过程>selecttextfromall_sourcewhereowner=userandname=upper('&plsql_name');三、查看数据库SQL1、查看表空间名称和大小selectt.tablespace_name,round(sum(bytes/(1024*1024)),0)ts_sizefromdba_tablespacest,dba_data_filesdwheret.tablespace_name=d.tablespace_namegroupbyt.tablespace_name; 2、查看表空间物理文件的名称和大小Selecttablespace_name,file_id,file_name,round(bytes/(1024*1024),0)total_spacefromdba_data_filesorderbytablespace_name;3、查看selectsegme回滚段的名称和大小;nt_name,tablespace_name,r.status,【(initial_extent/1024)InitialExtent,(next_extent/1024)NextExtent,【max_extents,v.curextCurExtent】Fromdba_rollback_segsr,v$ro
oracle空白不能导出怎么处理
1、Oracle11g默认不给空表分配分区;所以当使用exp提取Oracle11g数据库时;表字段不会被导出。2、将deferred_segment_creation参数设置为FALSE后;无论是空表还是非空表,都会分配分区。
在sqlplus中,运行以下命令:SQL>altersystemsetdeferred_segment_creation=false;查看:SQL>showparameterdeferred_segment_creation;3.为空表手动分配Extents可以解决提取前创建空表的问题。
说明如下:3.1ALLOCATEEXTENT使用指南使用ALLOCATEEXTENT为数据库对象分配盘区。
语法如下----------ALLOCATEEXTENT{SIZEinteger[K|M]|DATAFILE'文件名'|INSTANCEinteger}----------------------------------------------指标;以及视觉创作、场景等的自我限制分配。
ALLOCATEEXTENT用法示例:ALLOCATEEXTENTALLOCATEEXTENT(SIZEinteger[K|M])ALLOCATEEXTENT(DATAFILE'文件名')ALLOCATEEXTENT(INSTANCEinteger)ALLOCATEEXTENT(SIZEinteger[K|M]DATAFILE'文件名')ALLOCATEEXTENT(DATAFILE'文件名')ALLOCATEEXTENT(INSTANCEinteger)ALLOCATEEXTENT(SIZEinteger[K|M]DATAFILE'filename')M]DATAFILE'filename')是数据ALLOCATEGERS表函数的完整语法如下-----------ALTERTABLE[schema.]table_nameALLOCATEEXTENT[({SIZEinteger[K|M]|DATAFILE'文件名'|INSTANCEinteger})]------------所以您需要构建如下简单的SQL命令---------altertableaTabelNameallocateextent---------3.2构建SQL命令为空表字段分配空间并查询所有空表。
在当前用户下(一个用于用户最好是匹配固定的表空间)。
命令如下------------SQL>selecttable_namefromuser_tableswhereNUM_ROWS=0;------------可以根据上面的查询构建一个分配空间的命令语句。
一张空桌子;如下:-----------SQL>Select'altertable'||table_name||'allocateextent;'fromuser_tableswherenum_rows=0------------批量执行以上SQL语句并保存C:\创建createsql.sql------------setheaderoff;setechoff;setfeedbackoff;settermouton;spoolC:\allocate.sql;Select'altertable'||table_name||'allocateextent;'来自用户选项卡leswherenum_rows=0;spooloff;----------执行C:\createsql.sql;命令如下------------SQL>@C:\createsql.sql;-----------操作完成后,获得C:\allocate.sql文件。
当文件打开时,您将看到一个命令SQL语句,它将为所有空表分配空间。
3.4执行SQL命令为表空间分配空间:执行C:\allocate.sql;命令如下------------SQL>@C:\allocate.sql;-----------执行完成;桌子变了。
3.4此时,执行exp命令,正常提取所有表,包括空表。
另外:在Oracle11g中;密码区分大小写;这意味着密码中的字符仅为大写。
Oracle10g及更早版本;密码中字母的大小写并不重要。
相关文章
SQL查询性能提升秘籍:10招优化技巧详...
2024-12-24 07:05:21SQLServer误删数据无备份?学会这...
2024-12-15 15:23:08数据库表新列插入指南:SQL语句操作详解
2024-12-20 17:13:25CentOS7 MySQL8.x安装指南...
2024-12-16 03:17:38移动云MySQL:高效管理、灵活扩展,揭...
2024-12-16 20:01:01SQL Server安装问题解决:服务未...
2025-01-08 21:29:17MySQL OR操作优化技巧与索引合并策...
2024-12-27 00:40:34高效学习秘籍:揭秘每门课程均超80分的学...
2024-12-18 02:34:15SQL Server 2008远程连接配...
2024-12-30 19:43:54Server 2012 R2上安装SQL...
2024-12-22 15:51:13最新文章
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
12
2025-01
热门文章
1
Python代码实现:如何判断三角形的三...
python三角形三条边长,判断能否构成三角形Python三角形的三个长边如下:...
2
高效掌握:CMD命令轻松启动、关闭及登录...
如何用cmd命令快速启动和关闭mysql数据库服务开发中经常使用MySQL数据库...
3
SQL字段默认值设置全攻略:轻松实现自动...
sql如何设置字段默认值设置SQL中某个字段的默认值;需要遵循几个步骤。首先您需...
4
MySQL查询加速秘籍:PolarDB ...
mysql中in大量数据导致查询速度慢怎么优化?在MySQL中处理大量数据时,查...
5
SQL2000数据库备份压缩技巧:优化空...
怎么将SQL2000中的较大的备份数据库压缩变小更改数据库属性-选项-恢复模型很...
6
SQL字符串处理技巧:单引号使用与转义标...
SQL语句中,字符串类型的值均使用什么符号标明?单引号如果字符串内有单引号,请小...
7
Windows环境下Redis安装指南与...
redis安装windowsredis基本简介与安装安装Redis首先需要获取安...
8
深度解析:Redis性能优势与局限性,助...
redis有哪些优缺点?Redis的全称是RemoteDictionary.Se...
9
深入解析:MySQL数据库的特性与应用
mysql是什么MySQL是一个关系数据库管理系统。MySQL是一个开源关系数据...
10
Linux Redis操作指南:安装、配...
Linux系统进入redis并查询值1.进入redisredis-cli2.获取...