當前位置:首頁 » 操作系統 » 切換資料庫用

切換資料庫用

發布時間: 2023-06-07 12:20:21

㈠ oracle資料庫切換問題

你這個屬於主、備機切換

sql">1.察看主庫狀態
selectswitchover_statusfromv$database;

收集主庫上的臨時表空間的情況,原因是備庫激活後臨時文件可能丟失,需要手工建上去:
colfile_nameformata40
selectfile_name,tablespace_name,bytes/1024/1024fromdba_temp_files;

FILE_NAMETABLESPACE_NAMEBYTES/1024/1024
---------------------------------------------------------------------------
/data/oradata/alihr/temp01.dbfTEMP2048

2.切換主庫到standby
;
或:
;
shutdownimmediate;
startupnomount;
;

3.驗證要被切換的standby是否接收到switchto通知
SELECTSWITCHOVER_STATUSFROMV$DATABASE;
以前的狀態就是SESSIONSACTIVE,現在就變為TOPRIMARY

4.切換物理standby到主用模式,檢查redolog是否創建好
;
shutdownimmediate;
startup;

5.standby資料庫切換成主庫後,檢查是否需要、對臨時表空間增加臨時文件:
先檢查臨時文件是否丟失:
colfile_nameformata60
selectfile_name,tablespace_namefromdba_temp_files;
把結果前面原主庫上的臨時文件進行對比,如有丟失則使用如下命令增加:
'/data/oradata/alihr/temp02.dbf'size2048Mreuse;
正常情況下,如果db_file_name_convert參數設置正確的話,11g會自動建立tempfile

6.在新的standby機器上
altersystemsetlog_archive_dest_state_2='defer';
;

7.檢查主備庫中fal參數
fal_server服務名是在standby機器的tnsnames中,指向主庫,fal_client是在主庫上的tnsnames中,指向standby。
fal參數只在standby機器上生效,所以在standby機器上fal_server指向主庫,fal_client機器指向備庫.
而主庫上的fal參數雖然不生效,但為了避免主庫切換成standby時,我們還要修改fal參數,所以現在就設置好,
讓fal_server指向現在的standby資料庫,fal_client指向自己。

8.在新的主庫
altersystemsetlog_archive_dest_state_2='enable';
altersystemarchivelogcurrent;
然後到備庫上檢查備庫機器上日誌是否正常的傳過來了。

9.檢查和調整主備庫兩台機器中的crontab中的資料庫備份腳本和刪除歸檔腳本。

=================oracle11g的最大保護和最大可用模式下的切換==================
如果主庫是意外宕機的,則直接把備庫切換成主庫:

;
;
shutdownimmediate;
connect/assysdba;
startupmount;
;
shutdownimmediate;
connect/assysdba;
startupmount;
;
alterdatabaseopen;

注意:上面操作中是手工的把資料庫重新置成MAXIMIZEAVAILABILITY,否則資料庫起來後是最大性能模式。

檢查資料庫的角色:
selectdatabase_rolefromv$database;
原有主庫啟動後,如果不是硬碟壞,主庫上的數據還存在,則把主庫轉換成standby就可以了:
主庫上:
startupmount;
recoverautomaticdatabase;
;
shutdownimmediate;
注意千萬不要把主庫打開了,否則會導致主庫的SCN發生變化,無法轉換成standby資料庫了。


在把原先的主庫轉化為standby時,有時可能報如下錯誤:
SQL>;

*
ERRORatline1:
ORA-00283:
ORA-19909:
ORA-01110:datafile1:'/opt/oracle/oradata/oratest/system01.dbf'
這里把到rman中:
listincarnationofdatabase;
resetdatabasetoincarnation1;
recoverdatabase;
resetdatabasetoincarnation2;
=========================================================
failover在物理standby的切換

1.檢查standby看是否使用了standbylog
2.有standbylog,執行下面的命令
;
;
2.1沒有standbylog則不執行上面的
SKIPSTANDBYLOGFILE;
3.切換
;

3.1如果上面3步驟失敗,則
;
4.重啟db
shutdownimmediate
startup


switchover的方法:

主庫和物理standby的切換
1.察看主庫狀態
SELECTSWITCHOVER_STATUSFROMV$DATABASE;
2.切換
;
3.原主庫
shutdownimmediate;
startupnomount
;

4.驗證要被切換的standby是否接收到switchto通知
SELECTSWITCHOVER_STATUSFROMV$DATABASE;
增加onlineredo日誌
5.切換物理standby到主
;
shutdownimmediate;
startup;
6.在新的standby機器(也就是老的主庫)
;

7.在新的主庫
altersystemarchivelogcurrent;========activestandbydatabase===========
當:
;
原來的主庫只能通過閃回轉化成standbydatabase,但要求資料庫的flashback打開。

在新主庫上:
selectto_char(standby_became_primary_scn)fromv$database;

在舊主庫上:
SHUTDOWNIMMEDIATE;
STARTUPMOUNT;
FLASHBACKDATABASETOSCNstandby_became_primary_scn;
;


selectmax(sequence#)fromv$log_historywhereRESETLOGS_TIME=(selectmax(RESETLOGS_TIME)fromv$log_history);實例恢復:
;

=================lgwr設置====================================
altersystemsetlog_archive_dest_3='location=/disk3/arch/bopschareopen=2MAX_FAILURE=3';
altersystemsetlog_archive_dest_state_3=alternate;

altersystemsetlog_archive_dest_1='location=/disk2/arch/bopschaalternate=log_archive_dest_3reopen=60MAX_FAILURE=5';
*.log_archive_dest_2='SERVICE=DTMRTLGWRASYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAME=DTMRT';
('/oracle/u02/ORA10GDG/STANDBYRD01.LOG')size200M;
selectgroup#,thread#,sequence#,archived,statusfromv$standby_log;


{availability|performance|protection};

selectprotection_modefromv$database;


ORA-19527:
LOG_FILE_NAME_CONVERT='/u02/oracle/oradata/oract/','/u02/oracle/oradata/oract/'

altersystemsetlog_archive_dest_2='SERVICE=bopsteststblgwrsyncaffirm';


selectfrequency,rationfromv$redo_dest_resp_histogramwheredest_id=2andfrequency>1;SQL>;
SQL>ALTERDATABASEOPEN;
SQL>T;;
;


T;

;

finishapply;


;


舊主庫轉換成standby的步驟:
在新主庫上:
selectto_char(standby_became_primary_scn)fromv$database;

在舊主庫上:
SHUTDOWNIMMEDIATE;
STARTUPMOUNT;
FLASHBACKDATABASETOSCNstandby_became_primary_scn;
;


WITHSESSIONSHUTDOWN;

FORCE;

㈡ MYSQL 資料庫用什麼命令切換資料庫,謝謝大家教我。

要用哪個庫 就寫

use 庫名

就可以切換過去了

㈢ 通常情況下,用戶登錄到SQL Server時,如何將要使用的資料庫切換為當前資料庫

通常情況下,如果安裝過程中沒有出現錯誤提示,既可以認為安裝成功。但是,為了檢驗安裝是否正確,也可以採用一些驗證方法。例如,可以檢查SQL Server 2008的服務和工具是否存在,應該自動生成的系統共資料庫和樣本資料庫是否存在,以及有關文件和目錄是否正確等。

2
安裝之後,選擇【開始菜單】→【所有程序】→【SQL Server 2008】可以查看到SQL Server 2008的信息。

3
在SQL Server 2008中主要包括8項:Configurtion Tools、Docunmentaion and Tutorials、Analysis Services、Performance、SQL Server Management Studio、導入和導出數據(32位)以及SQL server Business Intelligence Development Studio。

4
SQL Server 2008還包含多個服務,可以通過菜單欄中選擇【SQL Server 2008配置管理】命令,從彈出窗口的左側單擊【SQL Server服務】選項來查看SQL Server 2008的各種服務。

END
2、注冊伺服器
1
選擇【開始】→【程序】→【SQL Server2008】→【SQL ServerManagement Studio】命令,打開【SQL ServerManagement Studio】窗口,並單擊【取消】按鈕。

2
在【查看】→【已注冊的伺服器】窗格中展開【資料庫引擎】節點,選擇【本地伺服器】→【新建伺服器注冊】命令。

3
在彈出下面圖所示的【新建伺服器注冊】對話框。在該對話框中輸入或選擇要注冊的伺服器名稱,在【身份驗證】下拉表中選擇【Windows 身份驗證】選項,單擊【連接屬性】標簽,切換到【連接屬性】選項卡,可以設置連接到的資料庫、網路以及其他連接屬性。

4
從【連接到資料庫】下拉表中指定當前用戶將要連接到的資料庫名稱,其中,【默認值】選項表示連接到SQL Server 系統中當前用戶默認使用的資料庫。【瀏覽伺服器】選項表示可以從當前伺服器中選擇一個資料庫。當選擇【瀏覽伺服器】選項時,彈出【查找伺服器上的資料庫】對話框,從該對話框中可以指定房錢用戶連接伺服器時默認的資料庫。

5
設定完成後,單擊【確定】按鈕返回【連接屬性】選項卡,單擊【測試】按鈕可以驗證連接是否成功,如果成功會彈出提示對話框表示連接屬性的設置時正確的。

6
最後,單擊票【確定】按鈕返回【連接屬性】選項卡,單擊【保存】按鈕來完成注冊伺服器操作。

END
3、配置伺服器
選擇【開始】→【程序】→【SQL Server2008】→【SQL ServerManagement Studio】命令,打開【連接到伺服器】對話框。

在此對話框中的【伺服器名稱】下拉列表中輸入本地計算機名稱,在設置【伺服器類型】為「資料庫引擎」,選擇使用SQL Server 或Windows身份驗證,並在相對應的文本框中輸入登錄名和密碼。

輸入完成後,單擊【連接】按鈕,即可成功連接伺服器。伺服器連接成功後,右鍵單擊【對象資源管理器】中要設置的伺服器名稱,在彈出來的快捷菜單中選擇【屬性】菜單項。

連接伺服器成功後,右鍵單擊【對象資源管理器】中要設置的伺服器名稱,在彈出來的菜單中選擇【屬性】命令。從彈出來的【伺服器屬性】對話框可以看出工包含了8個選項卡。其中【常則】選項窗口列出了當前服務產品名稱、操作系統名稱、平台名稱、版本號、使用言語、當前伺服器的內存大小、處理器數量、SQL Server 安裝目錄、伺服器的排列規則以及是夠群集化等信息。

㈣ 在sqlserver存儲過程中如何切換資料庫

不一定非要在存儲過程中轉換,用普通的sql語句就可以,一般用cast函數。

測試方法:

創建表及插入數據:
create table test
(id int,
starttime varchar(20));

insert into test values (1,'2015-07-11');

將starttime欄位轉化為datetime類型:
select cast(starttime as datetime) from test;

結果如圖,這時,starttime就轉成了datetime類型:

㈤ oracle 切換資料庫

直接登錄相應的用戶就可以了。
步驟:直接在命令行輸入sql>conn username/password;即可完成切換.
解釋:每個用戶都只能默認一個資料庫,不可能出現多個資料庫。所以直接切換到需要的用戶下即可完成操作。

㈥ 用Java反射+配置實現切換資料庫

說一個大概思路吧:
1.讀取數據:從資料庫中讀取數據的同時,拿到元數據,即metadata;
2.實例化:通過類名,利用反射升缺 實例你吵茄辯的實體類(類名可以和表名保持一致,這樣就不用寫額外的
映射了),納冊如果你只是想通過反射賦值的話,你也可以直接new個類;
3.方法調用:通過元數據,利用反射 得到你的set方法(方法名可以和欄位名保持一致,否則你要寫
出映射關系);

㈦ sql用什麼語句切換當前資料庫呢

--1、切換資料庫語句:
useAAADB;
go;

一般在程序中不使用以上語句

在程序內一般都是直接跨庫訪問,但首先當前資料庫用戶具備對別的數據有相應許可權,例如:

select*fromAAADB.dbo.AAA

以上語句是不管在當前在哪個資料庫下,都可以直接查詢AAADB資料庫下的AAA表,其中dbo是架構名

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:626
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:356
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:71
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:296
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:787
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:337
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:202
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:798
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:355
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:582