<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    修改DBNAME
    ?
    ?
    ??? 最近通過VMware硬盤的直接復制來創建結點,需要修改DBID和DBNAME(保證數據庫環境可用),找了找可以用來直接修改DBNAME的方法,還真有,原來Oracle本身就自帶了這個功能的工具(NID),用了一下發現使用還是比較方便的,但是更改之后問題多多,使用的最終結論還是:不到萬不得已不推薦使用,因為DBID涉及到的關聯很多,修改SID后會引發很多不可預知的錯誤,很多參數都任然沿用之間的%SID%,如果沒有非常特殊的要求,還是保留datafile后,刪除重建。講一下 具體的操作過程:

    一、NID的用法:
    ?
    ??? 這是Oracle自帶的工具,數據庫安裝完成后就自動安裝了。
    C:\>nid
    DBNEWID: Release 9.2.0.1.0 - Production
    Copyright (c) 1995, 2002, Oracle Corporation.? All rights reserved.
    ?
    Keyword???? Description??????????????????? (Default)
    ----------------------------------------------------
    TARGET????? Username/Password????????????? (NONE)
    DBNAME????? New database name????????????? (NONE)
    LOGFILE???? Output Log???????????????????? (NONE)
    REVERT????? Revert failed change?????????? NO
    SETNAME???? Set a new database name only?? NO
    APPEND????? Append to output log?????????? NO
    HELP??????? Displays these messages??????? NO

    用法舉例:

    1) 只修改DBID的用法 :
    wangxiaoqi> nid TARGET=sys/sys

    2) 修改DBID和DBNAME的用法:
    wangxiaoqi> nid TARGET=sys/sys DBNAME=kaka02

    3) 只修改DBNAME不改DBID的用法:
    wangxiaoqi> nid TARGET=sys/sys DBNAME=kaka02 SETNAME=YES
    ?
    4) 添加日志的用法
    wangxiaoqi> nid TARGET=sys/sys DBNAME=kaka02 SETNAME=YES LOGFILE='D:\test\nid.log'
    --理論上應該是這樣的,但是這個測試沒通過,根本不產生LOG
    ?
    ?
    二、修改步驟:
    ?
    1) 連接并修改DBNAME
    ?
    SQL> conn sys/sys as sysdba
    Connected.

    SQL> shutdown immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount
    ORACLE instance started.
    ?
    Total System Global Area? 135338868 bytes
    Fixed Size?????????????????? 453492 bytes
    Variable Size???????????? 109051904 bytes
    Database Buffers?????????? 25165824 bytes
    Redo Buffers???????????????? 667648 bytes
    Database mounted.
    SQL> host nid target=sys/sys dbname=kaka02
    DBNEWID: Release 9.2.0.1.0 - Production
    Copyright (c) 1995, 2002, Oracle Corporation.? All rights reserved.
    ?
    Connected to database KAKA (DBID=524574739)
    ?
    Control Files in database:
    ??? D:\ORACLE\ORADATA\KAKA\CONTROL01.CTL
    ??? D:\ORACLE\ORADATA\KAKA\CONTROL02.CTL
    ??? D:\ORACLE\ORADATA\KAKA\CONTROL03.CTL
    ?
    Change database ID and database name KAKA to KAKA02? (Y/[N]) => y
    ?
    Proceeding with operation
    Changing database ID from 524574739 to 2420728802
    Changing database name from KAKA to KAKA02
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL01.CTL - modified
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL02.CTL - modified
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL03.CTL - modified
    ??? Datafile D:\ORACLE\ORADATA\KAKA\SYSTEM01.DBF - dbid changed, wrote new name
    ??? Datafile D:\ORACLE\ORADATA\KAKA\UNDOTBS01.DBF - dbid changed, wrote new name
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL01.CTL - dbid changed, wrote new name
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL02.CTL - dbid changed, wrote new name
    ??? Control File D:\ORACLE\ORADATA\KAKA\CONTROL03.CTL - dbid changed, wrote new name
    ?
    Database name changed to KAKA02.
    Modify parameter file and generate a new password file before restarting.
    Database ID for database KAKA02 changed to 2420728802.
    All previous backups and archived redo logs for this database are unusable.
    Shut down database and open with RESETLOGS option.
    Succesfully changed database name and ID.
    DBNEWID - Completed succesfully.

    2) 修改db_name參數,重啟數據庫

    SQL> shutdown immediate
    ORA-01109: database not open
    Database dismounted.
    ORACLE instance shut down.

    ? --在spfile文件里作相應修改,數據庫db_name
    SQL>startup mount;
    SQL>alter system set db_name=kaka02 scope=spfile;
    System altered.
    ? --如果是pfile文件,需手工修改db_name參數值

    3) 重新創建密碼文件

    SQL>host orapwd file=c:\oracle\ora92\database\pwdkaka02.ora password=sys entries=8
    SQL> conn
    sys/sys as sysdba
    Connected to an idle instance.

    4) 以Resetlogs選項打開數據庫

    SQL> startup mount
    ORACLE instance started.
    ?
    Total System Global Area? 135338868 bytes
    Fixed Size?????????????????? 453492 bytes
    Variable Size???????????? 109051904 bytes
    Database Buffers?????????? 25165824 bytes
    Redo Buffers???????????????? 667648 bytes
    Database mounted.

    SQL> alter database open resetlogs;

    Database altered.

    5) 查看修改是構成功

    SQL> select dbid,name from v$database;

    ????? DBID NAME
    ---------- ---------
    2420728802 KAKA02

    SQL>

    注意:2、3不能顛倒,否則,重建口令文件是不可用的
    ?
    ?
    三、注意修改監聽
    ?
    ??? 發現在..\network\admin\listener.ora下直接添加SID修改不管用,監聽起來的時候還是沒有對新的DB進行監聽。
    ?
    ??? 最后在圖形界面下增加了新的SID后,重啟lsnrctl,連接成功。
    ?
    ?
    ?
    ?
    ?
    ?
    ?
    附:Tom對修改SID的建議和過程:
    ***************************************************
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:318216852435
    ***************************************************
    ?
    ?
    ?
    ?
    posted on 2009-06-20 23:19 decode360 閱讀(783) 評論(0)  編輯  收藏 所屬分類: 10.DB_Tools
    主站蜘蛛池模板: 99视频在线免费观看| 免费人成在线观看69式小视频| 一进一出60分钟免费视频| 人人公开免费超级碰碰碰视频| 国产成年无码久久久免费| 欧洲精品成人免费视频在线观看 | 亚洲?V乱码久久精品蜜桃| 怡红院亚洲怡红院首页| 亚洲国产精品综合久久2007| 色婷婷精品免费视频| 95老司机免费福利| 亚洲精品成人区在线观看| 亚洲国产美女在线观看 | 亚洲欧美日韩中文无线码| 女人隐私秘视频黄www免费| 亚洲精品无码久久久影院相关影片| 亚洲日本国产精华液| 可以免费看黄的网站| 亚洲一区二区三区自拍公司| 亚洲av最新在线观看网址| 一级毛片免费观看不卡的| 无码人妻精品一二三区免费| 国产V亚洲V天堂A无码| 香港经典a毛片免费观看看| 中文字幕亚洲日本岛国片| 高潮毛片无遮挡高清免费视频 | 免费日本一区二区| 亚洲色一色噜一噜噜噜| 激情无码亚洲一区二区三区| 日本免费网站视频www区| 亚洲精品久久无码av片俺去也| 亚洲国产成人久久综合野外| 美国毛片亚洲社区在线观看| 亚洲一本大道无码av天堂| 国产免费网站看v片在线| 亚洲精品在线免费观看| 久久青青草原国产精品免费| 亚洲一卡2卡3卡4卡乱码 在线| 狼群影院在线观看免费观看直播| 亚洲国产精品无码专区| 成人性生交大片免费看无遮挡 |