--修改后重新启动数据库,永久生效
SQL> alter system set nls_date_format='yyyymmdd';
ERROR at line 1:
--不能是memory scope(默认是both,所以也不行)ORA-02096: specified initialization parameter is not modifiable with this option
SQL> alter system set nls_date_format='yyyymmdd' scope=spfile;
System altered.
SQL> show parameter nls_date_format
--这个时候还没生效NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_date_format string
--重启数据库后SQL> show parameter nls_date_format
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_date_format string yyyymmdd
SQL> select sysdate from dual;
SYSDATE
--------
20090627
--只对当前session有效,重登录一次SQLPLUS,效果就消失了SQL> alter session set nls_date_format='yyyy-mm-dd';
--这个格式也很常用 yyyy-mm-dd hh:mi:ssSession altered.
--同时会覆盖初始化参数里的设置SQL> select sysdate from dual;
SYSDATE
----------
2009-06-27
posted @
2009-06-27 16:18 Jcat 阅读(681) |
评论 (0) |
编辑 收藏
Oracle所有对象的相关信息都可以通过
静态数据字典来查找,但数据字典实在太多,也记不清名字。
因为数据字典都是以
DBA_开头的
视图,所以可以想办法先把它们列出来。
btw,DBA>ALL>User以下两句结果上是等效的
select object_name from dba_objects where object_name like 'DBA\_%' escape '\' and object_type='VIEW';
select view_name from dba_views where view_name like 'DBA\_%' escape '\';
例子:
我想查看数据文件的相关信息,但是从DBA_DATA_FILES里,并没有看见Temp表空间的数据文件的信息。
于是可以尝试如下搜索:
SQL> select view_name from dba_views where view_name like 'DBA\_%
TEMP%' escape '\';
VIEW_NAME
------------------------------
DBA_ADVISOR_SQLW_TEMPLATES
DBA_ADVISOR_TEMPLATES
DBA_HIST_BASELINE_TEMPLATE
DBA_LOB_TEMPLATES
DBA_REPCAT_REFRESH_TEMPLATES
DBA_SUBPARTITION_TEMPLATES
DBA_TEMPLATE_REFGROUPS
DBA_TEMPLATE_TARGETS
DBA_TEMP_FILES --找到嫌疑犯,进去一看,果然记录的是关于Temp表空间的数据文件的信息DBA_TEMP_FREE_SPACE

列一些常用的在这吧
有趣的时,绝大多数数据字典都是复数单词,一般从单词上也都能猜出该视图的作用:
dba_users 数据库用户信息
dba_segments 表段信息
dba_extents 数据区信息
dba_objects 数据库对象信息
dba_tablespaces 数据库表空间信息
dba_data_files 数据文件设置信息
dba_temp_files 临时数据文件信息
dba_rollback_segs 回滚段信息
dba_ts_quotas 用户表空间配额信息
dba_free_space 数据库空闲空间信息
dba_profiles 数据库用户资源限制信息
dba_sys_privs 用户的系统权限信息
dba_tab_privs 用户具有的对象权限信息
dba_col_privs 用户具有的列对象权限信息
dba_role_privs 用户具有的角色信息
dba_audit_trail 审计跟踪记录信息
dba_stmt_audit_opts 审计设置信息
dba_audit_object 对象审计结果信息
dba_audit_session 会话审计结果信息
dba_indexes 用户模式的索引信息
posted @
2009-06-18 22:42 Jcat 阅读(300) |
评论 (0) |
编辑 收藏
这两个命令都是用来更改一些数据库配置的,所以经常容易混淆,如:
>alter database drop logfile group 1;
>alter system switch logfile;
>alter system kill session 'sid,serial#';
为了方便记忆,归纳如下:
alter database (改变数据库--database)
和物理文件直接相关的操作
alter system (改变实例--instance)
不直接牵涉到磁盘文件的操作当然,这只是为了方便记忆,只满足大部分的情况,并不是所有的命令都能套到这个框框里,最终还是用熟了就记住哪个是哪个了。---外传---
oracle server=Instance (memory structure) + Database (disk file) + U/S Process
Instance=SGA + Background Process
Database=control file + data file + log file
U/S Process= User Process + Server Process + PGA
posted @
2009-06-16 12:32 Jcat 阅读(226) |
评论 (0) |
编辑 收藏
《道路交通安全法实施条例》第四十九条规定,机动车在有禁止掉头或者禁止左转弯标志、标线的地点以及在铁路道口、人行横道、桥梁、急弯、陡坡、隧道或者容易发生危险的路段,不得掉头;机动车在没有禁止掉头或者没有禁止左转弯标志、标线的地点可以掉头,但不得妨碍正常行驶的其他车辆和行人的通行。在允许掉头的地点设有掉头专用信号灯的,应当在绿灯期间掉头;未设有掉头信号灯的,但有相应的标志标明在红灯或者绿灯期间掉头的,应当按照标志的指示掉头;既无掉头专用信号灯,又无其他标志指示的,掉头时可不受信号灯限制,但掉头时不得妨碍正常行驶的车辆和行人通行。
-----
有下列情形之一的,依法予以处罚:
(1)在设有禁止掉头(禁止左转弯)标志、标线的地点掉头的;
(2)在人行横道处掉头的;
(3)在非禁止掉头的地点掉头与正常行驶的车辆、行人发生交通事故的,按掉头时妨碍正常行驶的车辆通行或掉头时妨碍正常行驶的行人通行的行为予以处罚。
(4)没有从左侧第一条车道(设置专用掉头车道的除外)掉头的,按掉头时未按规定驶入最左侧车道的行为进行处罚。
-----
(一)下列情形,不属于违法行为:
(1)在没有禁止掉头(禁止左转弯)标志、标线的地点掉头的;
(2)
在没有禁止掉头(禁止左转弯)标志、标线的路口,红灯期间或绿灯期间掉头的; (3)
在黄色网格线内掉头的。(二)有下列情形之一的,依法予以处罚:
(1)在设有禁止掉头(禁止左转弯)标志、标线的地点掉头的;
(2)
在人行横道处掉头的;
(3)在非禁止掉头的地点掉头与正常行驶的车辆、行人发生交通事故的,按掉头时妨碍正常行驶的车辆通行或掉头时妨碍正常行驶的行人通行的行为予以处罚。
(4)
没有从左侧第一条车道(设置专用掉头车道的除外)掉头的,按掉头时未按规定驶入最左侧车道的行为进行处罚。
posted @
2009-05-29 00:46 Jcat 阅读(232) |
评论 (0) |
编辑 收藏
运行该Sub,所有单元格的字母都会变成大写的
Sub
cap()
Dim
cell
As
Range
For
Each
cell In UsedRange
cell.Value
=
UCase
$(cell.Value)
Next
End Sub
给定一段时间,计算出什么时候到期
Sub
deadline()
Dim
deadtime
As
Date
deadtime
=
DateAdd
(
"
d
"
, Cells(
2
,
2
),
Now
)
'
day
deadtime
=
DateAdd
(
"
h
"
, Cells(
2
,
3
), deadtime)
'
hour
deadtime
=
DateAdd
(
"
n
"
, Cells(
2
,
4
), deadtime)
'
minute
ActiveCell.Value
=
deadtime
End Sub
'
选中右移
ActiveCell.Value
=
123
Cells(ActiveCell.Row, ActiveCell.Column
+
1
).Select
ActiveCell.Value
=
456
posted @
2009-05-20 20:20 Jcat 阅读(193) |
评论 (0) |
编辑 收藏
登录RMAN
[oracle@dcm ~]$ rman target /
Recovery Manager: Release 11.1.0.6.0 - Production on Wed May 13 13:25:30 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: O11G (DBID=140043054)
或[oracle@dcm ~]$ rmanRecovery Manager: Release 11.1.0.6.0 - Production on Thu Jun 18 13:28:07 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target /connected to target database: O11G (DBID=140043054)
因为数据库是Open的,且又是非归档模式,所以无法进行在线全备份RMAN> backup database;ORA-19602: cannot backup or copy active file in NOARCHIVELOG mode
关了,整成mount状态RMAN> shutdowndatabase closed
database dismounted
Oracle instance shut down
RMAN> startup mountconnected to target database (not started)
Oracle instance started
database mounted
开始数据库全备份RMAN> backup database;Starting backup at 13-MAY-09
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=154 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/o11g/system01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/o11g/sysaux01.dbf
input datafile file number=00005 name=/u01/app/oracle/oradata/o11g/example01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/o11g/undotbs01.dbf
input datafile file number=00007 name=/u01/app/oracle/oradata/o11g/testspace2.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/o11g/users01.dbf
channel ORA_DISK_1: starting piece 1 at 13-MAY-09
channel ORA_DISK_1: finished piece 1 at 13-MAY-09
piece handle=/u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxwnqz_.bkp tag=TAG20090513T153229 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:35
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00006 name=/u01/app/oracle/oradata/o11g/testspace.dbf
channel ORA_DISK_1: starting piece 1 at 13-MAY-09
channel ORA_DISK_1: finished piece 1 at 13-MAY-09
piece handle=/u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13
/o1_mf_nnndf_TAG20090513T153229_50nxzv00_.bkp tag=TAG20090513T153229 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 13-MAY-09
Starting Control File and SPFILE Autobackup at 13-MAY-09
piece handle=
/home/oracle/myo11g/autobackup/c-140043054-20090513-00 comment=NONE
Finished Control File and SPFILE Autobackup at 13-MAY-09
查看备份信息RMAN> list backup of database;List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 1.15G DISK 00:01:33 13-MAY-09
BP Key: 1 Status: AVAILABLE Compressed: NO Tag: TAG20090513T153229
Piece Name: /u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxwnqz_.bkp
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/system01.dbf
2 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/sysaux01.dbf
3 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/undotbs01.dbf
4 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/users01.dbf
5 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/example01.dbf
7 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/testspace2.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
2 Full 252.00K DISK 00:00:07 13-MAY-09
BP Key: 2 Status: AVAILABLE Compressed: NO Tag: TAG20090513T153229
Piece Name: /u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxzv00_.bkp
List of Datafiles in backup set 2
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
6 Full 1565621 13-MAY-09 /u01/app/oracle/oradata/o11g/testspace.dbf
RMAN> list backup of controlfile;List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
3 Full 9.36M DISK 00:00:08 13-MAY-09
BP Key: 6 Status: AVAILABLE Compressed: NO Tag: TAG20090513T161909
Piece Name: /home/oracle/myo11g/autobackup/c-140043054-20090513-01
Control File Included: Ckp SCN: 1568079 Ckp time: 13-MAY-09
删除指定(BS Key)的备份集RMAN> delete backupset 1;using channel ORA_DISK_1
List of Backup Pieces
BP Key BS Key Pc# Cp# Status Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
1 1 1 1 AVAILABLE DISK /u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxwnqz_.bkp
Do you really want to delete the above objects (enter YES or NO)?
YESdeleted backup piece
backup piece handle=/u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxwnqz_.bkp RECID=1 STAMP=686763156
Deleted 1 objects
删除所有备份集RMAN> delete backup;using channel ORA_DISK_1
List of Backup Pieces
BP Key BS Key Pc# Cp# Status Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
2 2 1 1 AVAILABLE DISK /u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxzv00_.bkp
3 3 1 1 AVAILABLE DISK /home/oracle/myo11g/autobackup/c-140043054-20090513-00
Do you really want to delete the above objects (enter YES or NO)? YES
deleted backup piece
backup piece handle=/u01/app/oracle/flash_recovery_area/O11G/backupset/2009_05_13/o1_mf_nnndf_TAG20090513T153229_50nxzv00_.bkp RECID=2 STAMP=686763258
deleted backup piece
backup piece handle=/home/oracle/myo11g/autobackup/c-140043054-20090513-00 RECID=3 STAMP=686763268
Deleted 2 objects
posted @
2009-05-13 15:47 Jcat 阅读(334) |
评论 (0) |
编辑 收藏
01555
ORA-01555: snapshot too old 回滚段不够用了
可以采取的措施有:
1、应用程序尽量避免巨表的漫长查询操作,改传统的cursor游标为bulk collect;
2、尽量程序中不要使用大事务量的增删改操作,同时记得及时commit;
3、加大undo表空间和加大undo的retention。
10046
Event 10046是oracle用于系统性能分析时的一个最重要的事件。
posted @
2009-04-23 20:33 Jcat 阅读(254) |
评论 (0) |
编辑 收藏
Ora
s
le
74亿美元呀,现在Oracle可以和18摸全面抗衡了!
简直就成了IT届的 GE vs 西门子!

----收购后的格局----
航母级:IBM vs Oracle+SUN
软件:Microsoft,SAP,RedHat,Sybase(小赛的级别是不够放在这的,我觉得它最终也会走上被收购的道路)
硬件:HP,Dell,Fujitsu
----预测----
1. MySQL是生是死?
Oracle是当今企业级数据库的老大,MySQL是当今互联网应用的老大。
如果小O把小My干掉,并不代表小My的那部分市场会成为小O的;相反,如果小O能好好照顾小My,那简直就无敌了。
个人预测:75分,只要小O能够保持一颗开放的心,小My应该能有很好的发展。
2. Solaris是生是死?
小O一直致力于发展Linux技术(比如他和小红合作搞的Unbreakable Linux),是把Solaris拿来当补充,还是干掉?
个人预测:60分,不会有太大发展,保持现状。
3. Java的发展方向?
Oracle在很多方面都很需要Java,这是好的一面。
但是Java作为一门技术,而不是一个产品,需要有一个中立的代表,SUN以前的态度还是不错的。但小O和小I显然是誓不两立的,会不会导致Java世界的分裂?
个人预测:70分,这个可能最难预测,实在不希望看到不好的结果。
4. 硬件部分
这是小O没有的,但是不排除小O把它剥离卖出去。但我又觉得这种可能性很小,因为小O最不缺的就是钱,而且这是小O去和小I叫板的一大资本。
个人预测:80分,以后Oracle也可以玩total solution的游戏了。
----关系----
和IBM,这回真的成为死死对头了
和HP、Dell,选什么产品还是由市场决定的,小O总不能强买强卖SUN的服务器吧,还好吧
和RedHat,小O和小红正在一起搞过Unbreakable Linux,我觉得小O会继续搞下去
和Sybase,这回搞得三大主流操作系统(Windows、AIX、Solaris)都有自己的数据库了,Sybase的数据库将越来越难卖了
和SAP,Microsoft,跟这次收购没太大关系,但震撼一定不小
posted @
2009-04-21 10:27 Jcat 阅读(239) |
评论 (0) |
编辑 收藏
--最多同时运行的JOB个数;如果太小,JOB就排队等待;如果为0,就没有JOB会被执行。
SQL> show parameter job_queue_processes
NAME TYPE VALUE
-------------------------- ---------- -------------
job_queue_processes integer 10
--一个什么也不做的SP
CREATE OR REPLACE PROCEDURE mytest
IS
BEGIN
NULL;
END;
--一个往表里写数据的SPCREATE OR REPLACE PROCEDURE mytest
IS
BEGIN
insert into test_table values(...);
END;
--定时调用SP,10秒(86400秒=1天)SQL> VARIABLE job_id NUMBER;
SQL> BEGIN
-- :job_id中的冒号表示冒号后面的是变量,类似SQL Server的@ DBMS_JOB.SUBMIT(:job_id, 'mytest;', sysdate, 'sysdate + 10 / 86400') ;
COMMIT;
--记得一定要commit哦 END;
--查看刚才生成的Job IDSQL> set serveroutput on
SQL> execute dbms_output.put_line(:job_id)
--这里倒是不需要commit,直接execute就好了318--查看所有Job select * from user_jobs;
--删除JobSQL> BEGIN
DBMS_JOB.REMOVE(123); --123是Job ID
COMMIT;
END;
如果Job由于某种原因未能成功运行,Oracle将重试16次,之后如果还未能成功运行,将被标记为Broken。
http://www.blogjava.net/Jcat/archive/2009/12/17/306315.html
从10g开始,DBMS_SCHEDULER 逐步会替换掉 DBMS_JOB
DBMS_JOB has been around forever, and now it is deprecated. Although DBMS_JOB still exists in 10g and 11g, but only for backward compatibility. No new features are being added to dbms_job and you will likely quickly run into its limitations. Oracle recommends the use of DBMS_SCHEDULER in releases 10g and up. DBMS_SCHEDULER is a much more robust package and fully-featured than DBMS_JOB. To use the DBMS_SCHEDULER package a user must be granted the CREATE JOB privilege.
After replace DBMS_JOB with DBMS_SCHEDULER for all jobs successful, the job_queue_processes parameter can now be set to zero.
SQL> alter system set job_queue_processes=0;
posted @
2009-04-16 15:42 Jcat 阅读(772) |
评论 (0) |
编辑 收藏
登录 shell> mysql -u用户名 -p密码
查看数据库 mysql> show databases;
至少会显示出两个数据库mysql和test,这是系统自建的,供大家练习用。使用数据库 mysql> use 数据库名
查看表 mysql> show tables;
查看表结构 mysql> desc 表名;
备份数据库 shell> mysqldump -uroot -p密码 数据库名 > 备份的文件路径
posted @
2009-03-27 22:33 Jcat 阅读(292) |
评论 (0) |
编辑 收藏