启用flashback database 功能
启用闪回数据库要求: 1.数据库处于归档模式 2.启用闪回区查看当前数据库是否启用flashback database 功能SQL> select flashback_on from v$database;FLASHBACK_ON------------------NO重启数据库到mountSQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> sta...
使用blockrecover 对有坏块的数据文件进行恢复
1.创建测试表SQL> create tablespace tb1 datafile 'E:\oracle\product\10.2.0\oradata\orcl\tb101.dbf' size 5m;表空间已创建。SQL> create table tb1 tablespace tb1 as select * from t_t1;表已创建。SQL> select count(*)from tb1; COUNT(*)---------- 407412.rman全库备份RMAN> ...
merge使用(2)
1.创建orders_master表SQL> create table orders_master 2 (order_id number(2), 3 order_total number(4));表已创建。SQL> insert into orders_master values(1,1000);已创建 1 行。...
执行dbca时报错:Xlib:No protocol specified
解决办法: 1.root用户查看DISPLAY是否设置 env | grep DISPLAY DISPLAY=:0.0 2.root用户执行 xhost + 3.切换到oracle用户执行dbca
临时表空间达到几十G,执行SQL语句报错解决
最近开发人员反应执行SQL语句时报以下错误:查了下是临时表空间达到了32g解决办法:1. 创建一个新的临时表空间create temporary tablespace temp2 tempfile '/app/oradata/temp02.dbf' size 4096M autoextend on next 640k;2.把默认临时表空间改为temp2alter database default temporary tablespace temp23.删除旧...
把csv文件的数据导入到oracle数据库中
1.有一csv文件2.数据库中有一张对应表3.使用plsql developer的Text importerTools-->Text importer点击红圈的按钮,点开csv文件4.选择data to oracle,选择oracle用户名和表名,选择对应字段,最后点击import
oracle多表插入
SQL> create table test_1 2 (id number, 3 name varchar(5));Table created.SQL> insert into test_1 values(100,'a');1 row created.SQL> insert into test_1 values(200,'b');1 row created.SQL> insert into test_1 values(300,'c');1 row created.SQL> ...
求第二大的值
1.创建测试表并插入数据SQL> create table t(x int);表已创建。SQL> insert into t values(1);已创建 1 行。SQL> insert into t values(3);已创建 1 行。SQL> insert into t values(...
求横向与纵向最大值
1.创建表并插入测试数据SQL> create table t(a int,b int,c int);表已创建。SQL> insert into t values(1,2,3);已创建 1 行。SQL> insert into t values(4,5,6);已创建 1 行。SQL> ...
nullif
1.语法 nullif(expr1,expr2) nullif比较表达式1和表达式2,如果他们相等则返回null,如果不等,则返回表达式1.表达式不能用字符null. case when expr1=expr2 then null else expr1 end例:SQL> select nullif(80,80) from dual;NULLIF(80,80)-------...
时间默认值
SQL> create table orders 2 (order_id number(12) primary key, 3 order_date date default sysdate, 4 customer_id number(6), 5 order_total number(8,2));表已创建。SQL...
oracle手动建库
1安装oracle软件2 创建目录 数据库名:mynewdb3创建实例4创建初始化参数 E:\oracle\product\10.2.0\db_1\dbs\initdw.ora这个参文件进行修改,或者从其他库中拷贝一份进行修改 mynewdb.__db_cache_size=92274688mynewdb.__java_pool_size=419430...
配置监听
1.动态监听 动态注册特性也被称为服务注册. 动态服务注册在数据库参数文件中被配置.它不需要在listener.ora中有任何配置.1)配置服务注册 为了让服务注册正常工作,参数文件必须包含以下两个参数 service_names instance_nameservice_name参数的默认值是全局数据库名(global databa...
管理物理standby
1.关闭的打开物理standby数据库 1.1打开 1) startup mount 2)开始日志应用 SQL> alter database recover managed standby database disconnect from session;数据库已更改。 1.2关闭 1)查询v$managed_standby,如果mrp0或mrp进程存在,则在应用redo...
oracle natural join
自然连接是在两张表中寻找那些数据类型和列名都相同的字段,然后自动地将他们连接起来,并返回所有符合条件按的结果。来看一下自然连接的例子。SQL> select ename,dname from emp natural join dept;ENAME DNAME---------- --------------SMITH RESEARCHALLEN  ...
时间类型interval year to month
SQL> create table t_date(id int,m_time interval year to month);表已创建。SQL> insert into t_date values(1,interval '1' year);已创建 1 行。SQL> insert into t_date values(1,interval '11' month);已创建 1 行。SQL> insert into t_date values(1,interval '1-3' year to month);已创建 1 行。SQL> s...
using index
SQL> create table cus(id int primary key,name varchar2(10));表已创建。SQL> select constraint_name,constraint_type,table_name,index_owner,index_name from user_constraints where table_name='CUS';CONSTRAINT_NAME C TABLE_NAME &nbs...
months_between
months_between(date1,date2)返回两个日期的月份数,如果两个日期月份内天数相同,或者都是某个月的最后一天,返回一个整数,否则,返回数值带小数,以每天1/31月来计算月中剩余天数。SQL> select months_between(to_date('2014-5-1','yyyy-mm-dd'),to_date('2013-5-1','yyyy-mm-dd')) ds from dual; &nb...
merge使用
1.语法 merge into ... using ... on ... when matched then update ... when matched then insert ...2.实验 create table emp(id number,name varchar2(20),age number);插入数据 insert into emp values(1,'guo',23);insert into emp value...
count(*)优化
SQL> create table t1 as select * from dba_objects;表已创建。SQL> create index idx1_object_id on t1(object_id);索引已创建。SQL> select count(*) from t1; COUNT(*)---------- 49821思考一个问题,count(*)是否走索引?验证一下SQL> select count(*) from t1; COUNT(*)...