先来简单的说一下ORACLE的备份方式,详细功能可以搜索一下。
一种是逻辑备份,即所谓的导出(Export)和导入(Import)命令,这种方式的优点是,能够对数据库中的每个对象进行备份,并且实现不同平台下的数据迁移,但备份的时候数据库不能是关闭的,从CMD命令进入,缺点是无法保证介质的损失,只是逻辑上的数据备份,一般适用于日常备份和小数据量的维护。
二种是物理备份,物理备份分冷备份和热备份,冷备份,非归档模式,是在关闭数据库的情况下,将相关的数据库、控制、参数、日志文件等统一备份,其备份恢复速度快,安全性也高,缺点是,备份的是只能够恢复到某一个点上,并且无法实现某个对象的恢复,主要使用在实时要求不高(即可以关闭数据库)或者整体数据迁移时使用。热备份,归档模式,是在数据库不关闭的情况下进行备份,理论上可以恢复到当前的前一秒,缺点是,操作复杂,需要比较高的水平,中间不能出现差错,否则无法恢复,另外归档文件占用空间较大,主要使用在数据库访问量小或需要实现表空间和数据文件的备份,当然另外一个就是对备份精度要求比较高的场合。
& ......
1.启动TNS监听
C:\Documents and Settings\Administrator>lsnrctl start
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 13-7月 -2008 12:0
3:55
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为E:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入E:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xxx)(PORT=1521)))
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit ......
在SQL语句优化过程中,经常会用到hint,下面我们来介绍一下在SQL优化过程中常见Oracle中"HINT"的30个用法:
1. /*+ALL_ROWS*/
表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化。
2. /*+FIRST_ROWS*/
表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化。
3. /*+CHOOSE*/
表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最佳的吞吐量。
表明如果数据字典中没有访问表的统计信息,将基于规则开销的优化方法。
4. /*+RULE*/
表明对语句块选择基于规则的优化方法。
5. /*+FULL(TABLE)*/
表明对表选择全局扫描的方法。
6. /*+ROWID(TABLE)*/
提示明确表明对指定表根据ROWID进行访问。
7. /*+CLUSTER(TABLE)*/
提示明确表明对指定表选择簇扫描的访问方法,它只对簇对象有效。
8. /*+INDEX(TABLE INDEX_NAME)*/
表明对表选择索引的扫描方法。
9. /*+INDEX_ASC(TABLE INDEX_NAME)*/
表明对表选择索引升序的扫描方法.
10. /*+INDEX_COMBINE*/
为指定表选择位图访问路经,如果INDEX_COMB ......
导出Oracle数据库结构
1.方法一:直接写sql语句
//获取一个SCHEMA下的所有建表和建索引的语法,以scott为例:
spool portal_schema.sql
SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)
from USER_TABLES u;
SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name)
from USER_INDEXES u;
spool off;
2.方法二:利用PL/SQL中现有的功能
菜单->Tools ->Export User Objects... ......
Oracle数据字典常用查询
--查看当前用户所有表及描述
select o.object_name,c.comments
from user_objects o
left outer join user_tab_comments c
on o.object_name=c.table_name
where object_type='TABLE'
and c.comments like '%项目%'
--查看当前用户所有字段信息及描述
select c.table_name,o.column_name,o.data_type,o.data_length,c.comments
from user_tab_columns o
left outer join user_col_comments c
on o.TABLE_NAME=c.table_name
and o.COLUMN_NAME=c.column_name
where o.table_name like upper('OM_ORGANIZATION%') ......
解决办法:
1.使用Oracle用户登录系统,在CMD中启用SQLPLUS
2.sqlplus /nolog
3.SQL> connect /as sysdba
Connected.
4.SQL> alter user system account unlock;
User altered.
锁定账号方法:
1.SQL> alter user system account lock;
User altered.
修改帐号口令
1.SQL> alter user system identified by tiger; ......