Jcat
宠辱不惊,闲看庭前花开花落~~
posts - 173,comments - 67,trackbacks - 0
--修改后重新启动数据库,永久生效
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:ss
Session altered.  --同时会覆盖初始化参数里的设置

SQL> select sysdate from dual;
SYSDATE
----------
2009-06-27
posted @ 2009-06-27 16:18 Jcat 阅读(667) | 评论 (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


列一些常用的在这吧

posted @ 2009-06-18 22:42 Jcat 阅读(286) | 评论 (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 阅读(208) | 评论 (0)编辑 收藏
《道路交通安全法实施条例》第四十九条规定,机动车在有禁止掉头或者禁止左转弯标志、标线的地点以及在铁路道口、人行横道、桥梁、急弯、陡坡、隧道或者容易发生危险的路段,不得掉头;机动车在没有禁止掉头或者没有禁止左转弯标志、标线的地点可以掉头,但不得妨碍正常行驶的其他车辆和行人的通行。在允许掉头的地点设有掉头专用信号灯的,应当在绿灯期间掉头;未设有掉头信号灯的,但有相应的标志标明在红灯或者绿灯期间掉头的,应当按照标志的指示掉头;既无掉头专用信号灯,又无其他标志指示的,掉头时可不受信号灯限制,但掉头时不得妨碍正常行驶的车辆和行人通行。

-----

有下列情形之一的,依法予以处罚:
   (1)在设有禁止掉头(禁止左转弯)标志、标线的地点掉头的;     
   (2)在人行横道处掉头的;
   (3)在非禁止掉头的地点掉头与正常行驶的车辆、行人发生交通事故的,按掉头时妨碍正常行驶的车辆通行或掉头时妨碍正常行驶的行人通行的行为予以处罚。
   (4)没有从左侧第一条车道(设置专用掉头车道的除外)掉头的,按掉头时未按规定驶入最左侧车道的行为进行处罚。

-----

(一)下列情形,不属于违法行为:
    (1)在没有禁止掉头(禁止左转弯)标志、标线的地点掉头的;
    (2)在没有禁止掉头(禁止左转弯)标志、标线的路口,红灯期间或绿灯期间掉头的;
    (3)在黄色网格线内掉头的。

(二)有下列情形之一的,依法予以处罚:
   (1)在设有禁止掉头(禁止左转弯)标志、标线的地点掉头的;     
   (2)在人行横道处掉头的;
   (3)在非禁止掉头的地点掉头与正常行驶的车辆、行人发生交通事故的,按掉头时妨碍正常行驶的车辆通行或掉头时妨碍正常行驶的行人通行的行为予以处罚。
   (4)没有从左侧第一条车道(设置专用掉头车道的除外)掉头的,按掉头时未按规定驶入最左侧车道的行为进行处罚。


posted @ 2009-05-29 00:46 Jcat 阅读(207) | 评论 (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 阅读(181) | 评论 (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 ~]$ rman
Recovery 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> shutdown
database closed
database dismounted
Oracle instance shut down

RMAN> startup mount
connected 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
------- ---- -- ---------- ----------- ------------ ---------------
      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)? YES
deleted 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 阅读(304) | 评论 (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 阅读(238) | 评论 (0)编辑 收藏
Ora s le

74亿美元呀,现在Oracle可以和18摸全面抗衡了!

简直就成了IT届的 GE vs 西门子!

oracle-sun.JPG


----收购后的格局----
航母级: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 阅读(222) | 评论 (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;

--一个往表里写数据的SP
CREATE 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 ID
SQL> set serveroutput on
SQL> execute dbms_output.put_line(:job_id)  --这里倒是不需要commit,直接execute就好了
318

--查看所有Job
 select * from user_jobs;

--删除Job
SQL> 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 阅读(751) | 评论 (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 阅读(274) | 评论 (0)编辑 收藏
仅列出标题
共17页: 上一页 1 2 3 4 5 6 7 8 9 下一页 Last