Fosdccf.blog.chinaunix.net
sdccf
全部博文(19283)
Linux酷软(214)
tmp(0)
PostgreSQL(93)
Solaris(383)
AIX(173)
SCOUNIX(575)
DB2(1005)
Shell(386)
C/C++(1187)
MySQL(1750)
Sybase(465)
Oracle(3695)
Informix(548)
HP-UX(0)
IBM AIX(2)
Sun Solaris(0)
BSD(1)
Linux(8597)
SCO UNIX(23)
2011年(1)
2009年(125)
2008年(19094)
2007年(63)
clifford
linky521
曾德标
fengzhan
leon_yu
mcuflowe
yt200902
guanyuji
GY123456
snow888
carlos94
丸喵喵
sean229
cxunix
可怜的猪
cqxc413
xzzgege
wb123456
分类: Oracle
2008-04-30 16:08:44
第一章:日志管理 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:\oracle\oradb\log'); c. sql> execute dbms_logmnr_add_logfile('c:\oracle\oradata\oradb\redo01.log', sql> dbms_logmnr.new); d. sql> execute dbms_logmnr.add_logfile('c:\oracle\oradata\oradb\redo02.log', sql> dbms_logmnr.addfile); e. sql> execute dbms_logmnr.start_logmnr(dictfilename=>'c:\oracle\oradb\log\oradb.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:\oracle\oradata\file1.dbf' size 100m, sql> 'c:\oracle\oradata\file2.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:\oracle\oradata\user_data01.dbf' sql> size 500m extent management local uniform size 10m; 3.temporary tablespace sql> create temporary tablespace temp tempfile 'c:\oracle\oradata\temp01.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:\oracle\oradata\app_data01.dbf'size 200m sql> autoextend on next 10m maxsize 500m; 9.change the size fo data files manually sql> alter database datafile 'c:\oracle\oradata\app_data.dbf'resize 200m; 10.Moving data files: alter tablespace sql> alter tablespace app_data rename datafile 'c:\oracle\oradata\app_data.dbf' sql> to 'c:\oracle\app_data.dbf'; 11.moving data files:alter database sql> alter database rename file 'c:\oracle\oradata\app_data.dbf' sql> to 'c:\oracle\app_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;
原文:http://wjxx00.blog.ccidnet.com/blog-htm-itemid-182795-do-showone-type-blog-uid-62286.html
上一篇:oracle随笔杂例
下一篇:oracle基础(1)
登录 注册