`

oracle 管理常用命令

阅读更多
第一章:日志管理
1.forcing log switches

sql> alter system switch logfile;

2.forcing checkpoints

sql> alter system checkpoint;

3.adding online redo log groups

sql> alter database add logfile [group 4]

sql> ('/disk3/log4a.rdo','/disk4/log4b.rdo') size 1m;

4.adding online redo log members

sql> alter database add logfile member

sql> '/disk3/log1b.rdo' to group 1,

sql> '/disk4/log2b.rdo' to group 2;

5.changes the name of the online redo logfile

sql> alter database rename file 'c:/oracle/oradata/oradb/redo01.log'

sql> to 'c:/oracle/oradata/redo01.log';

6.drop online redo log groups

sql> alter database drop logfile group 3;

7.drop online redo log members

sql> alter database drop logfile member 'c:/oracle/oradata/redo01.log';

8.clearing online redo log files

sql> alter database clear [unarchived] logfile 'c:/oracle/log2a.rdo';

9.using logminer analyzing redo logfiles

a. in the init.ora specify utl_file_dir = ' '

b. sql> execute dbms_logmnr_d.build('oradb.ora','c:oracleoradblog');

c. sql> execute dbms_logmnr_add_logfile('c:oracleoradataoradbredo01.log',

sql> dbms_logmnr.new);

d. sql> execute dbms_logmnr.add_logfile('c:oracleoradataoradbredo02.log',

sql> dbms_logmnr.addfile);

e. sql> execute dbms_logmnr.start_logmnr(dictfilename=>'c:oracleoradblogoradb.ora');

f. sql> select * from v$logmnr_contents(v$logmnr_dictionary,v$logmnr_parameters

sql> v$logmnr_logs);

g. sql> execute dbms_logmnr.end_logmnr;


第二章:表空间管理

1.create tablespaces

sql> create tablespace tablespace_name datafile 'c:oracleoradatafile1.dbf' size 100m,

sql> 'c:oracleoradatafile2.dbf' size 100m minimum extent 550k [logging/nologging]

sql> default storage (initial 500k next 500k maxextents 500 pctinccease 0)

sql> [online/offline] [permanent/temporary] [extent_management_clause]

2.locally managed tablespace

sql> create tablespace user_data datafile 'c:oracleoradatauser_data01.dbf'

sql> size 500m extent management local uniform size 10m;

3.temporary tablespace

sql> create temporary tablespace temp tempfile 'c:oracleoradatatemp01.dbf'

sql> size 500m extent management local uniform size 10m;

4.change the storage setting

sql> alter tablespace app_data minimum extent 2m;

sql> alter tablespace app_data default storage(initial 2m next 2m maxextents 999);

5.taking tablespace offline or online

sql> alter tablespace app_data offline;

sql> alter tablespace app_data online;

6.read_only tablespace

sql> alter tablespace app_data read only|write;

7.droping tablespace

sql> drop tablespace app_data including contents;

8.enableing automatic extension of data files

sql> alter tablespace app_data add datafile 'c:oracleoradataapp_data01.dbf'size 200m

sql> autoextend on next 10m maxsize 500m;

9.change the size fo data files manually

sql> alter database datafile 'c:oracleoradataapp_data.dbf'resize 200m;

10.Moving data files: alter tablespace

sql> alter tablespace app_data rename datafile 'c:oracleoradataapp_data.dbf'

sql> to 'c:oracleapp_data.dbf';

11.moving data files:alter database

sql> alter database rename file 'c:oracleoradataapp_data.dbf'

sql> to 'c:oracleapp_data.dbf';


第三章:表

1.create a table

sql> create table table_name (column datatype,column datatype]....)

sql> tablespace tablespace_name [pctfree integer] [pctused integer]

sql> [initrans integer] [maxtrans integer]

sql> storage(initial 200k next 200k pctincrease 0 maxextents 50)

sql> [logging|nologging] [cache|nocache]

2.copy an existing table

sql> create table table_name [logging|nologging] as subquery

3.create temporary table

sql> create global temporary table xay_temp as select * from xay;

on commit preserve rows/on commit delete rows

4.pctfree = (average row size - initial row size) *100 /average row size

pctused = 100-pctfree- (average row size*100/available data space)

5.change storage and block utilization parameter

sql> alter table table_name pctfree=30 pctused=50 storage(next 500k

sql> minextents 2 maxextents 100);

6.manually allocating extents

sql> alter table table_name allocate extent(size 500k datafile 'c:/oracle/data.dbf');

7.move tablespace

sql> alter table employee move tablespace users;

8.deallocate of unused space

sql> alter table table_name deallocate unused [keep integer]

9.truncate a table

sql> truncate table table_name;

10.drop a table

sql> drop table table_name [cascade constraints];

11.drop a column

sql> alter table table_name drop column comments cascade constraints checkpoint 1000;

alter table table_name drop columns continue;

12.mark a column as unused

sql> alter table table_name set unused column comments cascade constraints;

alter table table_name drop unused columns checkpoint 1000;

alter table orders drop columns continue checkpoint 1000

data_dictionary : dba_unused_col_tabs


--分析表
  analyze table mzbs.db_code ESTIMATE STATISTICS SAMPLE 20 PERCENT;
  
  --表空间管理和用户管理
  
  --查看表空间和数据文件
  
  select file_name,tablespace_name,autoextensible from dba_data_files;
  
  --数据表空间
  
  CREATE TABLESPACE USER_DATA
  LOGGING
  DATAFILE D:ORACLEORADATAORCL est.DBF SIZE 50m REUSE ,
  c:USERS01112.DBF SIZE 50m REUSE
  AUTOEXTEND
  ON NEXT 1280K MAXSIZE 16383M EXTENT MANAGEMENT LOCAL
  
  --修改表空间数据文件的路径
  
  ALTER TABLESPACE app_data
  RENAME
  DATAFILE /DISK4/app_data_01.dbf
  TO  /DISK5/app_data_01.dbf;
  
  ALTER DATABASE
  RENAME FILE /DISK1/system_01.dbf
  TO /DISK2/system_01.dbf;
  
  --临时表空间
  
  CREATE TEMPORARY
  TABLESPACE USER_DATA_TEMP TEMPFILE D:TEMP0111.DBF
  SIZE 50M REUSE AUTOEXTEND
  ON NEXT 1024K MAXSIZE 16383M EXTENT MANAGEMENT LOCAL UNIFORM
  SIZE 1024K
  
  --增加数据文件
  
  ALTER TABLESPACE USER_DATA
  ADD DATAFILE c:USERS01113.DBF SIZE 50M;
  
  ALTER TABLESPACE USER_DATA
  ADD DATAFILE c:USERS01114.DBF SIZE 50M
  AUTOEXTEND ON
  ;
  
  --删除表空间
  
  DROP TABLESPACE USER_DATA INCLUDING CONTENTS;
  
  --修改表空间的存储参数
  
  ALTER TABLESPACE tablespacename
  MINIMUM EXTENT 2M;
  
  ALTER TABLESPACE tablespacename
  DEFAULT STORAGE (
  INITIAL 2M
  NEXT 2M
  MAXEXTENTS 999 );
  
  --表空间联机/脱机/只读
  
  ALTER TABLESPACE tablespacename OFFLINE/ONLINE/READ ONLY;
  
  --修改数据文件大小
  ALTER DATABASE
  DATAFILE c:USERS01113.DBF RESIZE 40M;
  
  --创建用户、赋予权限
  
  CREATE USER USER_DATA PROFILE DEFAULT IDENTIFIED BY USER_DATA
  DEFAULT
  TABLESPACE USER_DATA TEMPORARY
  TABLESPACE USER_DATA ACCOUNT UNLOCK;
  
  GRANT CONNECT TO USER_DATA;
  GRANT RESOURCE TO USER_DATA;
  
  3、表的管理
  
  --创建表
  
  CREAE TABLE TABLENAME
  (COLUMN1 COLUTYPE DEFAULT(VALUE) NOT NULL)
  (COLUMN2 COLUTYPE DEFAULT(VALUE) NOT NULL);
  
  --建表的索引存储分配
  
  CREATE TABLE summit.employee(id NUMBER(7) CONSTRAINT employee_id_pk PRIMARY KEY DEFERRABLE USING INDEX STORAGE(INITIAL 100K NEXT 100K)
  TABLESPACE indx,
  last_name VARCHAR2(25) CONSTRAINT employee_last_name_nn NOT NULL,
  dept_id NUMBER(7))
  TABLESPACE data;
  
  --修改表的存储分配
  
  ALTER TABLE tablename
  PCTFREE 30
  PCTUSED 50
  STORAGE(NEXT 500K
  MINEXTENTS 2
  MAXEXTENTS 100);
  
  ALTER TABLE tablename
  ALLOCATE EXTENT(SIZE 500K
  DATAFILE /DISK3/DATA01.DBF);
  
  --把表移到另一个表空间
  
  ALTER TABLE TABLENAME MOVE TABLESPACE TABLESPACENAME;
  
  --回收空闲的空间(回收到High-water mark)
  全部回收需要TRUNCATE TABLE tablename
  
  ALTER TABLE tablename
  DEALLOCATE UNUSED;
  
  --删除表(连同所用constraint)
  
  DROP TABLE tablename
  CASCADE CONSTRAINTS;
  
  --给表增加列
  
  ALTER TABLE TABLENAME
  ADD COLUMN COLUTYPE DEFAULT(VALUE) NOT NULL;
  
  --删除表中的列
  
  ALTER TABLE tablename
  DROP COLUMN columnname;
  
  ALTER TABLE tablename
  DROP COLUMN columnname
  CASCADE CONSTRAINTS CHECKPOINT 1000;
  
  --标记列不可用
  
  ALTER TABLE tablename
  SET UNUSED COLUMN columnname
  CASCADE CONSTRAINTS;
  
  --删除标记为不可用的列
  
  ALTER TABLE tablename
  DROP UNUSED COLUMNS CHECKPOINT 1000;
  
  --继续删除列选项
  
  ALTER TABLE tablename
  DROP COLUMNS CONTINUE CHECKPOINT 1000;
  
  --把表放到BUFFER_POOL中去
  
  ALTER TABLE tablename
  STORAGE (BUFFER_POOL RECYCLE);
  
  --避免动态分配EXTENT
  
  ALTER TABLE tablename ALLOCATE EXTENT;
  
  --把表放到CACHE中去
  
  ALTER TABLE tablename ALLOCATE CACHE/NOCACHE;
  
  4、索引管理
  
  --创建索引
  
  CREATE INDEX indexname ON TABLENAME(COLUMNNAME);
  
  CREATE INDEX indexname ON TABLENAME(COLUMNNAME) TABLESPACE TABLESPACENAME;
  
  --重新建立索引
  
  ALTER INDEX indexname REBUILD TABLESPACE TABLESPACE;
  
  --索引分配参数
  
  ALTER INDEX indexname
  STORAGE(NEXT 400K
  MAXEXTENTS 100);
  
  --释放索引空间
  
  ALTER INDEX indexname
  ALLOCATE EXTENT (SIZE 200K
  DATAFILE /DISK6/indx01.dbf);
  
  ALTER INDEX indexname
  DEALLOCATE UNUSED;
  
  --重新整理索引表空间碎片
  
  ALTER INDEX indexname COALESCE;
  
  --删除索引
  
  DROP INDEX indexname
  
  --把索引放到BUFFER_POOL中
  
  ALTER INDEX cust_name_idx
  REBUILD
  STORAGE (BUFFER_POOL KEEP);
  
  5、约束管理
  
  --建立主键
  
  ALTER TABLE TABLENAME
  ADD CONSTRAINT CONSTRAINTNAME PRIMARY KEY(COLUMN1,COLUMN2)
  
  --使约束无效
  
  ALTER TABLE TABLENAME ENABLE NOVALIDATE CONSTRAINT constraintname;
  
  ALTER TABLE TABLENAME ENABLE VALIDATE CONSTRAINT constraintname;
  
  --删除约束
  
  ALTER TABLE tablename DROP CONSTRAINT constraintname;
  
  DROP TABLE tablename CASCADE CONSTRAINTS;(删除表后将所用的外键删除)
  
  --给列增加缺省值
  
  ALTER TABLE TABLENAME
  MODIFY columnname DEFAULT(value) NOT NULL;
  
  --给表增加外键
  ALTER TABLE tablename
  ADD CONSTRAINT constraintname
  FOREIGN KEY(column) REFERENCES table1name(column1);
  
  6、安全策略
  
  --加密传输
  
  把客户端环境变量ora_encrypt_login设为true
  把服务器端参数dblink_encypt_login设为true
  
  --数据库管理员安全策略
  
  a、建库后立即修改SYS/SYSTEM的口令(9.2后必须修改其口令)
  b、只有数据库管理员才能以SYSDBA登录系统
  c、建立不同角色的管理员,分配不同的权限
  
  比如:对象创建于维护
  数据库的调整与维护
  创建用户分配角色
  启动关闭
  恢复备份
  
  --应用开发者的安全策略
  
  a、开发者的特权只能在测试开发的数据库中赋予权限
  b、自由开发者、受控开发者
  自由开发者:create tableindexprocedurepackage
  受控开发者:没有以上权限
  
  7、日志文件管理
  
  --切换日志文件
  
  ALTER SYSTEM SWITCH LOGFILE;
  
  --增加日志文件
  
  ALTER DATABASE ADD LOGFILE
  (/DISK3/log3a.rdo,
  /DISK4/log3b.rdo) size 1M;
  
  --增加日志成员
  
  ALTER DATABASE ADD LOGFILE MEMBER
  /DISK4/log1b.rdo TO GROUP 1
  /DISK4/log2b.rdo TO GROUP 2;
  
  --删除日志文件
  
  ALTER DATABASE DROP LOGFILE GROUP 3;
  
  --删除日志成员
  
  ALTER DATABASE DROP LOGFILE MEMBER /DISK4/log2b.dbf;
  
  --清除日志文件内容
  
  ALTER DATABASE CLEAR LOGFILE /DISK3/log2a.rdo;
分享到:
评论

相关推荐

    Oracle DBA常用运维命令大全

    ### Oracle DBA常用运维命令详解 #### 一、SQLPLUS工具使用 **1. 运行SQLPLUS工具** - **命令**: `sqlplus` - **描述**: SQL*Plus 是 Oracle 提供的一个强大的命令行工具,用于执行 SQL 命令、脚本文件等。 - **...

    oracle常用cmd命令

    Oracle 常用 CMD 命令 Oracle 是一种关系数据库管理系统,提供了强大的数据存储和管理功能。但是,对于新手来说,熟悉 Oracle 的 CMD 命令是非常必要的。下面我们将详细介绍 Oracle 常用的 CMD 命令,帮助新手快速...

    oracle_DBA常用命令

    ### Oracle DBA 常用命令详解 在Oracle数据库管理工作中,熟练掌握一系列核心命令对于高效维护数据库系统至关重要。本文将详细介绍《oracle_DBA常用命令》文档中提及的关键知识点及其应用场景,帮助读者深入理解并...

    ORACLE 12c RAC的常用管理命令

    了解并掌握RAC的常用管理命令对于DBA来说至关重要,这有助于确保系统的稳定运行和高效管理。下面将详细介绍一些关键的Oracle 12c RAC管理命令。 1. **crsctl**: Oracle Clusterware 的控制工具,用于管理集群资源和...

    个人总结oracle 9i常用命令(txt)

    根据提供的文档内容,我们可以整理出以下关于Oracle 9i数据库管理与操作的重要知识点: ### Oracle 9i系统启动与关闭 #### 启动Oracle系统 1. **作为Oracle用户启动Oracle系统** - 使用`su - oracle`切换到Oracle...

    oracle常用命令文档

    ### Oracle 常用命令与操作指南 #### 一、Oracle 安装与卸载注意事项 **1.1 Oracle 的安装** - **安装步骤:** 对于 Oracle 的安装,网络上有很多详细的指导教程。在安装过程中,需要注意的是,管理口令部分确保...

    ORACLE数据库常用命令

    本文总结了ORACLE数据库的常用命令,包括内核参数的设置、用户管理、安装工具的准备、数据库的启动和关闭等方面的命令。 一、内核参数的设置 ORACLE数据库的内核参数设置是数据库管理员最常用的命令之一,通过设置...

    Oracle经典常用命令

    Oracle数据库是全球广泛使用的...这些命令行操作是Oracle数据库管理员日常工作中最常用的,熟练掌握它们能有效提高工作效率。在实际操作中,还需根据具体环境和需求进行调整。详细信息可参考Oracle官方文档或相关教程。

    Mysql与Oracle常用命令比较

    本文档旨在对比MySQL与Oracle数据库管理系统中的常用命令,为数据库管理员或开发人员提供一个清晰的参考指南。通过本指南,读者可以更好地理解这两种数据库系统之间的差异,并根据实际需求选择最适合的技术。 #### ...

    oracle 11g常用命令

    Oracle 11g 常用命令 Oracle 11g 是一种关系数据库管理系统,提供了许多实用的命令来管理和维护数据库。在本文中,我们将介绍一些常用的 Oracle 11g 命令,包括监听命令、用户管理命令、表及表空间管理命令等。 一...

    oracle数据库常用命令.txt

    ### Oracle数据库常用命令知识点 ...通过以上知识点的详细介绍,我们对Oracle数据库的常用命令有了更深入的理解,这些命令涵盖了登录、管理、查询等多个方面,对于日常的数据库管理和维护工作非常有用。

    ORACLE常用命令.doc

    Oracle数据库是世界上最广泛...总之,掌握Oracle的常用命令和数据字典的使用是数据库管理员的基本技能,对于日常的数据库维护和问题排查至关重要。通过熟悉这些工具,可以更好地优化数据库性能,确保系统的稳定运行。

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup ...

    ORACLE常用命令总结

    ### ORACLE常用命令总结 #### 一、日志管理 在Oracle数据库中,日志管理是维护数据库稳定性和完整性的重要组成部分。以下是一些常见的日志管理命令及其详细解释: 1. **强制切换日志(Forcing Log Switches)** ...

    oracle维护常用命令.doc

    在日常运维中,掌握一些常用的Oracle命令是非常必要的。以下是一些关键的Oracle维护命令的详细解释: 1. **确认INSTANCE和listener状态**: 使用`ps -ef | grep ora`命令列出所有与Oracle相关的进程,然后通过`...

    ORACLE常用命令

    ### ORACLE常用命令详解 #### 一、ORACLE的启动和关闭 在ORACLE数据库管理中,正确地启动和关闭数据库是非常重要的操作之一。这些操作不仅涉及到系统的稳定性,还关系到数据的安全性。 ##### 1、在单机环境下 ...

    Oracle常用命令大全

    ### Oracle常用命令详解 #### 一、Oracle的启动与关闭 **1. 在单机环境下的启动与关闭** - **启动Oracle系统** - **切换用户:** 首先需要切换到Oracle用户环境。 ```bash su - oracle ``` - **使用`svrmgrl`...

    Oracle数据库sqlplus常用命令

    Oracle数据库sqlplus常用命令 Oracle数据库sqlplus是Oracle数据库管理系统中的一种命令行工具,用于执行SQL语句、查看数据库状态、执行数据库管理任务等。以下是Oracle数据库sqlplus常用命令的知识点总结: 获取...

    oracleRAC常用管理命令

    ### Oracle RAC 常用管理命令详解 Oracle Real Application Clusters (RAC) 是一个在多台服务器之间实现数据库高可用性和负载均衡的技术。为了有效地管理和监控Oracle RAC环境,掌握一系列常用的管理命令是非常重要...

Global site tag (gtag.js) - Google Analytics