我的oracle9i学习笔记
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 create database db01 maxlogfiles 10 maxdatafiles 1024 maxinstances 2 logfile GROUP 1 ('/u01/oradata/db01/log_01_db01.rdo') SIZE 15M, GROUP 2 ('/u01/oradata/db01/log_02_db01.rdo') SIZE
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
create database db01
maxlogfiles 10
maxdatafiles 1024
maxinstances 2
logfile
GROUP 1 ('/u01/oradata/db01/log_01_db01.rdo') SIZE 15M,
GROUP 2 ('/u01/oradata/db01/log_02_db01.rdo') SIZE 15M,
GROUP 3 ('/u01/oradata/db01/log_03_db01.rdo') SIZE 15M,
datafile 'u01/oradata/db01/system_01_db01.dbf') SIZE 100M,
undo tablespace UNDO
datafile '/u01/oradata/db01/undo_01_db01.dbf' SIZE 40M
default temporary tablespace TEMP
tempfile '/u01/oradata/db01/temp_01_db01.dbf' SIZE 20M
extent management local uniform size 128k
character set AL32UTE8
national character set AL16UTF16
set time_zone='America/New_York';
############### 数据字典 ##########
set wrap off
select * from v$dba_users;
grant select on table_name to user/rule;
select * from user_tables;
select * from all_tables;
select * from dba_tables;
revoke dba from user_name;
shutdown immediate
startup nomount
select * from v$instance;
select * from v$sga;
select * from v$tablespace;
alter session set nls_language=american;
alter database mount;
select * from v$database;
alter database open;
desc dictionary
select * from dict;
desc v$fixed_table;
select * from v$fixed_table;
set oracle_sid=foxconn
select * from dba_objects;
set serveroutput on
execute dbms_output.put_line('sfasd');
############# 控制文件 ###########
select * from v$database;
select * from v$tablespace;
select * from v$logfile;
select * from v$log;
select * from v$backup;
/*备份用户表空间*/
alter tablespace users begin backup;
select * from v$archived_log;
select * from v$controlfile;
alter system set control_files='$ORACLE_HOME/oradata/u01/ctrl01.ctl',
'$ORACLE_HOME/oradata/u01/ctrl02.ctl' scope=spfile;
cp $ORACLE_HOME/oradata/u01/ctrl01.ctl $ORACLE_HOME/oradata/u01/ctrl02.ctl
startup pfile='../initSID.ora'
select * from v$parameter where name like 'control%' ;
show parameter control;
select * from v$controlfile_record_div;
select * from v$tempfile;
/*备份控制文件*/
alter database backup controlfile to '../filepath/control.bak';
/*备份控制文件,并将二进制控制文件变为了asc 的文本文件*/
alter database backup controlfile to trace;
############### redo log ##############
archive log list;
alter system archive log start;--启动自动存档
alter system switch logfile;--强行进行一次日志switch
alter system checkpoint;--强制进行一次checkpoint
alter tablspace users begin backup;
alter tablespace offline;
/*checkpoint 同步频率参数FAST_START_MTTR_TARGET,同步频率越高,系统恢复所需时间越短*/
show parameter fast;
show parameter log_checkpoint;
/*加入一个日志组*/
alter database add logfile group 3 ('/$ORACLE_HOME/oracle/ora_log_file6.rdo' size 10M);
/*加入日志组的一个成员*/
alter database add logfile member '/$ORACLE_HOME/oracle/ora_log_file6.rdo' to group 3;
/*删除日志组:当前日志组不能删;活动的日志组不能删;非归档的日志组不能删*/
alter database drop logfile group 3;
/*删除日志组中的某个成员,但每个组的最后一个成员不能被删除*/
alter databse drop logfile member '$ORACLE_HOME/oracle/ora_log_file6.rdo';
/*清除在线日志*/
alter database clear logfile '$ORACLE_HOME/oracle/ora_log_file6.rdo';
alter database clear logfile group 3;
/*清除非归档日志*/
alter database clear unarchived logfile group 3;
/*重命名日志文件*/
alter database rename file '$ORACLE_HOME/oracle/ora_log_file6.rdo' to '$ORACLE_HOME/oracle/ora_log_file6a.rdo';
show parameter db_create;
alter system set db_create_online_log_dest_1='path_name';
select * from v$log;
select * from v$logfile;
/*数据库归档模式到非归档模式的互换,要启动到mount状态下才能改变;startup mount;
然后再打开数据库.*/
alter database noarchivelog/archivelog;
achive log start;---启动自动归档
alter system archive all;--手工归档所有日志文件
select * from v$archived_log;
show parameter log_archive;
###### 分析日志文件logmnr ##############
1) 在init.ora中set utl_file_dir 参数
2) 重新启动oracle
3) create 目录文件
desc dbms_logmnr_d;
dbms_logmnr_d.build;
4) 加入日志文件 add/remove log file
dhms_logmnr.add_logfile
dbms_logmnr.removefile
5) start logmnr
dbms_logmnr.start_logmnr
6) 分析出来的内容查询 v$logmnr_content --sqlredo/sqlundo
实践:
desc dbms_logmnr_d;
/*对数据表做一些操作,为恢复操作做准备*/
update 表 set qty=10 where stor_id=6380;
delete 表 where stor_id=7066;
/***********************************/
utl_file_dir的路径
execute dbms_logmnr_d.build('foxdict.ora','$ORACLE_HOME/oracle/admin/fox/cdump');
execute dbms_logmnr.add_logfile('$ORACLE_HOME/oracle/ora_log_file6.log',dbms_logmnr.newfile);
execute dbms_logmnr.start_logmnr(dictfilename=>;'$ORACLE_HOME/oracle/admin/fox/cdump/foxdict.ora');
######### tablespace ##############
select * form v$tablespace;
select * from v$datafile;
/*表空间和数据文件的对应关系*/
select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts#=t2.ts#;
alter tablespace users add datafile 'path' size 10M;
select * from dba_rollback_segs;
/*限制用户在某表空间的使用限额*/
alter user user_name quota 10m on tablespace_name;
create tablespace xxx [datafile 'path_name/datafile_name'] [size xxx] [extent management local/dictionary] [default storage(xxx)];
exmple: create tablespace userdata datafile '$ORACLE_HOME/oradata/userdata01.dbf' size 100M AUTOEXTEND ON NEXT 5M MAXSIZE 200M;
create tablespace userdata datafile '$ORACLE_HOME/oradata/userdata01.dbf' size 100M extent management dictionary default storage(initial 100k next 100k pctincrease 10) offline;
/*9i以后,oracle建议使用local管理,而不使用dictionary管理,因为local采用bitmap管理表空间 ,不会产生系统表空间的自愿争用;*/
create tablespace userdata datafile '$ORACLE_HOME/oradata/userdata01.dbf' size 100M extent management local uniform size 1m;
create tablespace userdata datafile '$ORACLE_HOME/oradata/userdata01.dbf' size 100M extent management local autoallocate;
/*在创建表空间时,设置表空间内的段空间管理模式,这里用的是自动管理*/
create tablespace userdata datafile '$ORACLE_HOME/oradata/userdata01.dbf' size 100M extent management local uniform size 1m segment space management auto;
alter tablespace userdata mininum extent 10;
alter tablespace userdata default storage(initial 1m next 1m pctincrease 20);
/*undo tablespace(不能被用在字典管理模下) */
create undo tablespace undo1 datafile '$ORACLE_HOME/oradata/undo101.dbf' size 40M extent management local;
show parameter undo;
/*temporary tablespace*/
create temporary tablespace userdata tempfile '$ORACLE_HOME/oradata/undo101.dbf' size 10m extent management local;
[1] [2] [3] [4] [5]

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

要查询 Oracle 表空间大小,请遵循以下步骤:确定表空间名称,方法是运行查询:SELECT tablespace_name FROM dba_tablespaces;查询表空间大小,方法是运行查询:SELECT sum(bytes) AS total_size, sum(bytes_free) AS available_space, sum(bytes) - sum(bytes_free) AS used_space FROM dba_data_files WHERE tablespace_

Oracle 视图加密允许您加密视图中的数据,从而增强敏感信息安全性。步骤包括:1) 创建主加密密钥 (MEk);2) 创建加密视图,指定要加密的视图和 MEk;3) 授权用户访问加密视图。加密视图工作原理:当用户查询加密视图时,Oracle 使用 MEk 解密数据,确保只有授权用户可以访问可读数据。

在 Oracle 中查看实例名的方法有三种:命令行中使用 "sqlplus" 和 "select instance_name from v$instance;" 命令。在 SQL*Plus 中使用 "show instance_name;" 命令。通过操作系统的任务管理器、Oracle Enterprise Manager 或检查环境变量 (Linux 上的 ORACLE_SID)。

Oracle 安装失败的卸载方法:关闭 Oracle 服务,删除 Oracle 程序文件和注册表项,卸载 Oracle 环境变量,重新启动计算机。若卸载失败,可使用 Oracle 通用卸载工具手动卸载。

在 Oracle 中获取时间有以下方法:CURRENT_TIMESTAMP:返回当前系统时间,精确到秒。SYSTIMESTAMP:比 CURRENT_TIMESTAMP 更准确,精确到纳秒。SYSDATE:返回当前系统日期,不含时间部分。TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS'): 将当前系统日期和时间转换为特定格式。EXTRACT:从时间值中提取特定部分,如年份、月份或小时。

数据导入方法:1. 使用 SQLLoader 实用程序:准备数据文件、创建控制文件、运行 SQLLoader;2. 使用 IMP/EXP 工具:导出数据、导入数据。提示:1. 大数据集推荐 SQL*Loader;2. 目标表应存在,列定义匹配;3. 导入后需验证数据完整性。

在 Oracle 中创建用户需遵循以下步骤:使用 CREATE USER 语句创建新用户。使用 GRANT 语句授予必要权限。可选:使用 RESOURCE 语句设置配额。配置其他选项,如默认角色和临时表空间。

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。
