oracle基本命令集锦

前端之家收集整理的这篇文章主要介绍了oracle基本命令集锦前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、oracle监听配置

A、监听D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora.ora

wKioL1myI1WxWIntAAAL3pllcoE909.png

@H_502_39@

1动态注册不需要显示的配置listener.ora文件,实例MOUNT时,PMON进程就会根据

instance_name,service_name参数将实例和服务动态注册listerer中。@H_502_39@

2静态注册指实例启动时读取listener.ora配置文件,将实例和服务注册到监听程序。

BTNSD:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora

wKiom1myI4PwWg9TAAApWkbaI8o036.png

@H_502_39@

@H_502_39@

@H_502_39@

1CMD@H_502_39@

2LSNRCTL运行至LSNRCTL@H_502_39@

3LSNRCTL>status 查看状态@H_502_39@

4LSNRCTL>stop 监听停止@H_502_39@

5LSNRCTL>start 启动监听@H_502_39@

6LSNRCTL>reload 重新启动@H_502_39@

@H_502_39@

=========================================@H_502_39@

二、登录

1CMDSYSDBY登录

sqlplus / as sysdba;超级用户sysdba@H_502_39@

sqlplus system/admin as sysdba;@H_502_39@

sqlplus scott/tiger@orcl;@H_502_39@

sqlplus /nolog; 进入sql模式@H_502_39@

conn / as sysdba; DBA身份连接数据库@H_502_39@

create user unary identified by 123; 创建unary用户,密码:123@H_502_39@

alter user system identified by unary123;//修改帐号的密码@H_502_39@

grant dba,sysdba to unary; 给与unary用户DBA权限@H_502_39@

GRANT SELECT ON SCOTT.EMP TO unary;//EMP这个表所有权给unary用户赋予表查询权限@H_502_39@

select distinct owner from all_objects;查看当前系统用户@H_502_39@

select username from dba_users; 查看当前所有用户@H_502_39@

3CONN登录

sql> conn sys用户名/manager(密码)@orcl(实例名)as sysdba; 连接数据库@H_502_39@

sql> conn system/2008Bc1223@orcl as sysdba;@H_502_39@

@H_502_39@

4RMAN登录(鼠标右键CMD.EXE以“管理员方式登录”不加分号)@H_502_39@

Rman>rman target sys/2008Bc1223@orcl@H_502_39@

=========================================================================@H_502_39@

三、Oracle设置自动归档

1sqlplus system/123@orclas sysdba//管理员身份连接数据库@H_502_39@

2sql> archive log list; //查看当前归档模式,是归档还是非归档@H_502_39@

3sql> shutdown immediate;//关闭数据库@H_502_39@

4sql> startup mount;启动数据库mount状态@H_502_39@

5sql> alter database archivelog/noarchivelog;//启动/关闭自动归档模式@H_502_39@

6sql>Alter system archive log current;//切换当前日志并且自动归档@H_502_39@

7sql> alter database open;启动数据库,打开数据库并将其装入@H_502_39@

8sql> Select status from v$instance;查看数据库是否打开-open@H_502_39@

注意:Select instance_name from v$instance; //查看oracle数据库名字,即SID_NAME = ORCL@H_502_39@

==================================================@H_502_39@

四、ORACLE数据库几种状态查看

sql>show parameter db_name; //查看oracle数据库名称命令orcl@H_502_39@

sql>select status from v$instance;//查看oracle当前数据库状态open@H_502_39@

sql>show parameter db_recover; //查看oracle查看闪回恢复区的信息(默认:归档日志会存放到闪回恢复区@H_502_39@

sql>select name from v$datafile;//查询数据DBF文件位置@H_502_39@

sql>select open_mode from v$database;//查询数据库状态,打开和可写模式 open/write@H_502_39@

sql>select file#,name,status,enabled,checkpoint_change# from v$datafile;//查询数据文件状态@H_502_39@

sql>select sum(bytes)/1024/1024/1024 as GB from v$datafile;//查询数据文件(表空间)大小@H_502_39@

sql>select sum(bytes)/1024/1024/1024 as GB from dba_segments;//查询有效数据大小@H_502_39@

sql>select * from v$version; //查询数据库版本信息@H_502_39@

sql>select instance_name from v$instance;//查询当前数据库实例名称@H_502_39@

sql>select * from global_name; //查询全局数据库名称@H_502_39@

sql>select name from v$datafile; //查询数据文件位置@H_502_39@

@H_502_39@

@H_502_39@

@H_502_39@

==================================================@H_502_39@

sql>show parameter db_recover; //查看oracle数据库闪回区的路径容量@H_502_39@

sql>alter system set db_recovery_file_dest_size=50G; //更改归档目录容量目标50G,默认4G@H_502_39@

sql>alter system set log_archive_dest_1='location=c:\archivelog'; //变更归档路径,重启数据库生效。alter database open;@H_502_39@

sql>alter system archive log current; //手动产生归档日志@H_502_39@

sql>alter system switch logfile; 切换归档方式日志组;和以下命令结合使用。@H_502_39@

sql>alter system set log_archive_format='ARC%S_%R.%T_%D.log' scope=spfile; 生成归档日志文件@H_502_39@

===================================================@H_502_39@

如果可以登录任意的一个用户可以通过一下方法来知道当前有哪些用户@H_502_39@

sql>select distinct owner from all_objects 查看当前用户@H_502_39@

@H_502_39@

oracle数据库新建表命令:@H_502_39@

sql>sql>create table unary(ItemNO number(2),ItemName varchar2(20)); 创建 unary表格@H_502_39@

sql>sql>drop table unary 删除unary 删除表命令@H_502_39@

sql> select TABLE_NAME from all_tables; 查看当前库的所有数据表@H_502_39@

===================================================@H_502_39@

数据文件重定位 @H_502_39@

1. 脱机 Alter database datafile 'c:\oracle\data02.dbf'offline;@H_502_39@

2. 复制 Host copy c:\oracle\data02.dbf c:\oracle\oradata\ora10\data02.dbf @H_502_39@

3. 修改控制文件中的文件Alter database rename file c:\oracle\data02.dbf to c:\oracle\oradata\ora10\data02.dbf @H_502_39@

4. 同步文件头部与数据库 Recover datafile 'c:\oracle\oradata\ora10\data02.dbf'@H_502_39@

5. 把它重新联机,以便可供使用 Alter database datafile 'c:\oracle\oradata\ora10\data02.dbf'online; @H_502_39@

===================================================@H_502_39@

五、RMAN备份与恢复

1RMAN登录(鼠标右键CMD.EXE以“管理员方式登录”不加分号)@H_502_39@

Rman>rman target sys/2008Bc1223@orcl@H_502_39@

或:cmd:> Rman target / nocatalog@H_502_39@

delete obsolete;//删除备份集@H_502_39@

Crosscheck backup //校验备份集@H_502_39@

@H_502_39@

计划任务:@H_502_39@

开始-输入“计划”,右击“microsoft@H_502_39@

C:\Users\Administrator>rman target sys/2008Bc1223@orcl cmdfile='D:\app\full.sql'log='D:\app\full.log'@H_502_39@

--------------------------------------------------------------------------------------@H_502_39@

RMAN> change archivelog all crosscheck; //数据库无法备份时,交叉检测,保证备份集有效@H_502_39@

RMAN> delete expired archivelog all; //数据库无法备份时,删除过期日志expired(过期的)@H_502_39@

--------------------------------------------------------------------------------------@H_502_39@

===================================================@H_502_39@

如果ORACLE无法启动,可能是数据库恢复没有完成,操作如下:@H_502_39@

RMAN> recover database;@H_502_39@

RMAN> alter database open resetlogs;//重新打开数据库@H_502_39@

@H_502_39@

数据库已打开@H_502_39@

sql> select open_mode from v$database;@H_502_39@

===================================================@H_502_39@

完全备份数据库指定路径:@H_502_39@

RMAN> backup incremental level 0 database format 'c:\bakup\database-%s-%T-%t-%U.@H_502_39@

bak';@H_502_39@

===================================================@H_502_39@

//RMAN中执行,《查看备份集信息和删除过期与失效得备份集@H_502_39@

@H_502_39@

RMAN>List incarnation;//查看生命周期@H_502_39@

RMAN>list backup;查看备份集信息@H_502_39@

RMAN>report obsolete;列出过期的备份集 @H_502_39@

RMAN>delete noprompt obsolete;删除过期的备份集@H_502_39@

RMAN>crosscheck backup;验证备份集有效性 @H_502_39@

RMAN>delete expired backup;//删除失效的备份集@H_502_39@

#RMAN恢复到指定时间点@H_502_39@

run{@H_502_39@

set until time "to_date('2017-01-14 21:10:00','yyyy-mm-dd hh24:mi:ss')";@H_502_39@

restore database;@H_502_39@

recover database;@H_502_39@

}@H_502_39@

alter database open resetlogs;@H_502_39@

@H_502_39@

六、RMAN备份与恢复

A:概念:

1、完全备份:

对备份对象进行完全备份@H_502_39@

2、增量备份:

每次备份的数据只是相对于上一次备份后新增加的和修改过的数据@H_502_39@

3、差异备份:

每次备份的数据是相对于上一次全备份之后增加的和修改过的数据@H_502_39@

4、日志备份:

自上次备份以来对数据库所做的改变。@H_502_39@

B:备份:

1、完全备份:

run{@H_502_39@

allocate channel ch1 device type disk;@H_502_39@

backup incremental level 0 database format 'D:\app\Administrator\BACKUP\database-%s-%T-%t-%U-%d.bak';@H_502_39@

sql 'alter system archive log current'; \\@H_502_39@

backup archivelog all format 'D:\app\Administrator\BACKUP\archlog-%s-%T-%t-%U-.bak' delete all input;@H_502_39@

backup current controlfile format 'D:\app\Administrator\BACKUP\ctrlfile-%s-%T-%t-%U-.bak'; \\备份控制文件命令@H_502_39@

release channel ch1; \\释放通道@H_502_39@

report obsolete;@H_502_39@

delete noprompt obsolete;@H_502_39@

crosscheck backup;@H_502_39@

delete noprompt expired backup;@H_502_39@

}@H_502_39@

@H_502_39@

2、差异备份

backup incremental level 1 database format 'D:\app\Administrator\BACKUP\database-%s-%T-%t-%U-.bak';@H_502_39@

sql 'alter system archive log current';@H_502_39@

backup archivelog all format 'D:\app\Administrator\BACKUP\archlog-%s-%T-%t-%U-%d.bak' delete all input;@H_502_39@

backup current controlfile format 'D:\app\Administrator\BACKUP\ctrlfile-%s-%T-%t-%U-%d.bak';@H_502_39@

release channel ch1;@H_502_39@

3、增量备份

backup incremental level 1 cumulative database format 'D:\app\Administrator\BACKUP\database-%s-%T-%t-%U-%d.bak';@H_502_39@

4、归档日志备份

Backup archivelog from time "to_date('2017-01-14 18:07:00','yyyy-mm-dd hh24:mi:ss')" @H_502_39@

format 'D:\app\Administrator\BACKUP\archlog-%s-%T-%t-%U-%d.bak' delete all input;@H_502_39@

@H_502_39@

七、如何启动或关闭oracle的归档(ARCHIVELOG)模式

A:开启归档模式

1CMD> sqlplus sys/sys@orcl as sysdba@H_502_39@

2sql> archive log list;@H_502_39@

3sql> shutdown immediate; 关闭数据库@H_502_39@

4sql> startup mount; 启动数据库mount状态@H_502_39@

5sql> alter database archivelog;启动归档模式@H_502_39@

6sql> alter database open; 启动数据库@H_502_39@

B关闭归档模式

1sql> shutdown immediate; 2sql> startup mount;@H_502_39@

3sql> alter database noarchivelog; 4sql> alter database open;@H_502_39@

@H_502_39@

C: 启动|关闭 数据库实例:分为三个步骤

1、启动实例、加载数据库、打开数据库 STARTUP [nomount | mount | open ]@H_502_39@

2、关闭数据库、卸载数据库关闭Oracle实例。SHUTDOWN [normal | transactional | immediate ]@H_502_39@

猜你在找的Oracle相关文章