diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/Copy of advwb1_logship.vbs b/Documentation/SupportingDocumentation/DatabaseScripts/Copy of advwb1_logship.vbs new file mode 100644 index 0000000..ec1024d --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/Copy of advwb1_logship.vbs @@ -0,0 +1,22 @@ +REM $Id$ +const archive_source = "\\advweb\archivelogs" +const archive_dest = "\\advwb2.opcs-online.info\archivelogs" + +CopyArchives archive_source,archive_dest + +Sub CopyArchives(strSource, strDest) + Dim fileSystem + Dim fldrSource + Dim fldrDest + + set fileSystem = createobject("Scripting.FileSystemObject") + set fldrSource = fileSystem.GetFolder(strSource) + set fldrDest = fileSystem.GetFolder(strDest) + + for each file in fldrSource.Files + WScript.Echo "Looking at " & file.Name + if not filesystem.FileExists(strDest & "\" & file.Name) then + file.Copy (strDest & "\" & file.Name) + end if + next +End Sub \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/activatestandby.sql b/Documentation/SupportingDocumentation/DatabaseScripts/activatestandby.sql new file mode 100644 index 0000000..0871890 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/activatestandby.sql @@ -0,0 +1,10 @@ +REM $Id$ +set echo on +spool activatestandby.log +connect &&user/&&password as sysdba +alter database activate standby; +shutdown immediate; +startup mount; +alter database open; +spool off; +exit diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/advwb1_logship.vbs b/Documentation/SupportingDocumentation/DatabaseScripts/advwb1_logship.vbs new file mode 100644 index 0000000..98ab274 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/advwb1_logship.vbs @@ -0,0 +1,132 @@ +REM $Id$ +const archive_source = "\\advweb\archivelogs" +const logship_user = "advweb\logship" +const logship_pwd = "logship" +const archive_dest = "\\advwb2.opcs-online.info\archivelogs" +const strFrom = "webmip@AdvanticaGroup.com" +const strTo = "Andrew.Hardy@AdvanticaGroup.com" +const strSub = "MIP: Logship" +const strSubError = "MIP: Logship Error" +strBody = "Logship Completed Successfully" +const strSMTP = "relay01.sleek.net" + + +CopyArchives archive_source,archive_dest, logship_user, logship_pwd + +Sub CopyArchives(strSource, strDest, strUser, strPwd) + Dim strLocalDrive + strLocalDrive = "L:" + + Dim strRemoteDrive + strRemoteDrive = "R:" + + 'error handling + On Error Resume Next + + Set objNetwork = CreateObject("WScript.Network") + + objNetwork.MapNetworkDrive strLocalDrive, strSource, false, strUser, strPwd + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Mapping " & strSource & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.MapNetworkDrive strRemoteDrive, strDest, false, strUser, strPwd + + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Mapping " & strDest & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + set fileSystem = createobject("Scripting.FileSystemObject") + + WScript.Echo "Getting fldrSource" + set fldrSource = fileSystem.GetFolder(strLocalDrive) + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Getting Local Folder " & strLocalDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + + WScript.Echo "Getting fldrDest" + set fldrDest = fileSystem.GetFolder(strRemoteDrive) + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Getting Remote Folder " & strRemoteDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + + WScript.Echo "Looking at directory " & strSource + for each file in fldrSource.Files + if not filesystem.FileExists(strDest & "\" & file.Name) then + WScript.Echo "Copying " & file.Name & " to " & strDest & "\" & file.Name + file.Copy (strDest & "\" & file.Name) + end if + next + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error During File Copy:" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.RemoveNetworkDrive strRemoteDrive + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Removing Remote Folder " & strRemoteDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.RemoveNetworkDrive strLocalDrive + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Removing Local Folder " & strLocalDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + SendEmail strFrom, StrTo, strSub, strBody, StrSMTP + +End Sub + +' From the book "Windows Server Cookbook" by Robbie Allen +' ISBN: 0-596-00633-0 + +Sub SendEmail(strFrom, StrTo, strSub, strBody, StrSMTP) + set objEmail = CreateObject("CDO.Message") + objEmail.From = strFrom + objEmail.To = strTo + objEmail.Subject = strSub + objEmail.Textbody = strBody + objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 + objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSMTP + objEmail.Configuration.Fields.Update + objEmail.Send + If Err.Number <> 0 Then + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + WScript.Echo "Email sent" +End Sub \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/advwb2_logship.vbs b/Documentation/SupportingDocumentation/DatabaseScripts/advwb2_logship.vbs new file mode 100644 index 0000000..52acf34 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/advwb2_logship.vbs @@ -0,0 +1,132 @@ +REM $Id$ +const archive_dest = "\\advwb1.opcs-online.info\archivelogs" +const logship_user = "logship" +const logship_pwd = "logship" +const archive_source = "\\advwb2.opcs-online.info\archivelogs" +const strFrom = "webmip@AdvanticaGroup.com" +const strTo = "Andrew.Hardy@AdvanticaGroup.com" +const strSub = "MIP: Logship" +const strSubError = "MIP: Logship Error" +strBody = "Logship Completed Successfully" +const strSMTP = "relay01.sleek.net" + + +CopyArchives archive_source,archive_dest, logship_user, logship_pwd + +Sub CopyArchives(strSource, strDest, strUser, strPwd) + Dim strLocalDrive + strLocalDrive = "L:" + + Dim strRemoteDrive + strRemoteDrive = "R:" + + 'error handling + On Error Resume Next + + Set objNetwork = CreateObject("WScript.Network") + + objNetwork.MapNetworkDrive strLocalDrive, strSource, false, strUser, strPwd + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Mapping " & strSource & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.MapNetworkDrive strRemoteDrive, strDest, false, strUser, strPwd + + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Mapping " & strDest & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + set fileSystem = createobject("Scripting.FileSystemObject") + + WScript.Echo "Getting fldrSource" + set fldrSource = fileSystem.GetFolder(strLocalDrive) + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Getting Local Folder " & strLocalDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + + WScript.Echo "Getting fldrDest" + set fldrDest = fileSystem.GetFolder(strRemoteDrive) + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Getting Remote Folder " & strRemoteDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + + WScript.Echo "Looking at directory " & strSource + for each file in fldrSource.Files + if not filesystem.FileExists(strDest & "\" & file.Name) then + WScript.Echo "Copying " & file.Name & " to " & strDest & "\" & file.Name + file.Copy (strDest & "\" & file.Name) + end if + next + + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error During File Copy:" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.RemoveNetworkDrive strRemoteDrive + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Removing Remote Folder " & strRemoteDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + objNetwork.RemoveNetworkDrive strLocalDrive + 'handle error + If Err.Number <> 0 Then + SendEmail strFrom, StrTo, strSubError, "Error Removing Local Folder " & strLocalDrive & ":" & Err.Description, StrSMTP + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + + SendEmail strFrom, StrTo, strSub, strBody, StrSMTP + +End Sub + +' From the book "Windows Server Cookbook" by Robbie Allen +' ISBN: 0-596-00633-0 + +Sub SendEmail(strFrom, StrTo, strSub, strBody, StrSMTP) + set objEmail = CreateObject("CDO.Message") + objEmail.From = strFrom + objEmail.To = strTo + objEmail.Subject = strSub + objEmail.Textbody = strBody + objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 + objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSMTP + objEmail.Configuration.Fields.Update + objEmail.Send + If Err.Number <> 0 Then + Wscript.Echo "Error number " & Err.Number & " occured: " & Err.Description + Wscript.Echo "" + Wscript.Quit Err.Number + End If + WScript.Echo "Email sent" +End Sub \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/applylog.cmd b/Documentation/SupportingDocumentation/DatabaseScripts/applylog.cmd new file mode 100644 index 0000000..7d12e55 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/applylog.cmd @@ -0,0 +1,3 @@ +REM $Id$ +set ORACLE_SID=webmip +sqlplus /nolog @applylog \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/applylog.sql b/Documentation/SupportingDocumentation/DatabaseScripts/applylog.sql new file mode 100644 index 0000000..b941a94 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/applylog.sql @@ -0,0 +1,8 @@ +REM $Id$ +set echo on +spool s:\orabackup\webmip\scripts\applylog.log +connect sys/fmdidgad as sysdba +alter database recover automatic standby database until cancel; +alter database recover cancel; +spool off; +exit diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/applylog_status.sql b/Documentation/SupportingDocumentation/DatabaseScripts/applylog_status.sql new file mode 100644 index 0000000..b3ffda3 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/applylog_status.sql @@ -0,0 +1,4 @@ +alter session set nls_date_format='DD-MON-YYYY HH24:MI:SS' +/ +SELECT FIRST_TIME, FIRST_CHANGE#, NEXT_CHANGE#, SEQUENCE# FROM V$LOG_HISTORY +/ \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/archivelog.sql b/Documentation/SupportingDocumentation/DatabaseScripts/archivelog.sql new file mode 100644 index 0000000..def0dfd --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/archivelog.sql @@ -0,0 +1,14 @@ +REM $Id$ +conn &&user/&&password as sysdba; +shutdown immediate; +conn &&user/&&password as sysdba; +startup mount; +alter database force logging; +alter system set log_archive_dest_1='location=s:\orabackup\webmip\archivelogs\' scope=both; +/* +set the time by which archive logs +should lag the redo in seconds +*/ +alter system set archive_lag_target=2700; +alter database archivelog; +alter database open; diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/hotbackup.sql b/Documentation/SupportingDocumentation/DatabaseScripts/hotbackup.sql new file mode 100644 index 0000000..36d098a --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/hotbackup.sql @@ -0,0 +1,83 @@ +REM $Id$ +SET SERVEROUTPUT ON +store set set_settings.sql +set feedback off pagesize 0 heading off verify off +set linesize 100 trimspool on +DEFINE backup_dir = 's:\orabackup\webmip\files\' +REM Determine the oldest archive log to be backed up +archive log list; +alter system switch logfile; +REM +REM produce a SQL script that: +REM places each tablespace into 'backup' mode, +REM copies the contents of the tablespace to the +REM backup directory, +REM returns each tablespace from 'backup' mode +REM +PROMPT *** SPOOLING +spool do_backup.sql +WITH tsp_df AS ( +SELECT tsp.tablespace_name + ,df.file_name + ,rownum AS current_row + ,first_value(rownum) over(PARTITION BY tsp.tablespace_name) AS first_row + ,last_value(rownum) over(PARTITION BY tsp.tablespace_name) AS last_row + FROM dba_tablespaces tsp + ,dba_data_files df + WHERE tsp.contents <> 'TEMPORARY' + AND tsp.tablespace_name = df.tablespace_name +) +SELECT cmd + FROM (SELECT 'alter tablespace ' || tablespace_name || ' begin backup;' AS cmd + ,tablespace_name + ,1 AS seq + FROM tsp_df + WHERE current_row = first_row + UNION + SELECT 'host ocopy ' || file_name || ' &&backup_dir' AS cmd + ,tablespace_name + ,2 AS seq + FROM tsp_df + WHERE (current_row = first_row) + OR (current_row <> first_row AND current_row <> last_row) + OR (current_row = last_row AND last_row <> first_row) + UNION + SELECT 'alter tablespace ' || tablespace_name || ' end backup;' AS cmd + ,tablespace_name + ,3 AS seq + FROM tsp_df + WHERE current_row = last_row) + ORDER BY tablespace_name + ,seq +/ +spool off; +PROMPT *** SPOOLING COMPLETE +@set_settings +@@do_backup +REM +REM Create SQL script to add temporary files to temporary tablespaces +REM +set feedback off pagesize 0 heading off verify off +set linesize 100 trimspool on +spool create_tempfile$.sql +select 'alter tablespace '||ts.name||' add tempfile '''||df.name||''' size '|| df.bytes||' reuse;' from v$tempfile df, v$tablespace ts +where ts.ts# = df.ts# +/ +spool off +host move create_tempfile$.sql &&backupdir\create_tempfiles.sql +@set_settings +REM +REM create control file for the standby database +REM create backup control file for the primary database +REM +alter database create standby controlfile as 's:\orabackup\webmip\files\standby.ctl'; +alter database backup controlfile to 's:\orabackup\webmip\files\backup.ctl'; +REM +REM create a database initialization script for +REM the standby database +REM +create pfile='s:\orabackup\webmip\files\initstandby.ora' from spfile; +REM +REM Determine the current archive log to be backed up +archive log list; +alter system switch logfile; diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/oradim_inst.cmd b/Documentation/SupportingDocumentation/DatabaseScripts/oradim_inst.cmd new file mode 100644 index 0000000..04fb961 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/oradim_inst.cmd @@ -0,0 +1 @@ +oradim -NEW -SID webmip -STARTMODE manual \ No newline at end of file diff --git a/Documentation/SupportingDocumentation/DatabaseScripts/oradim_start.cmd b/Documentation/SupportingDocumentation/DatabaseScripts/oradim_start.cmd new file mode 100644 index 0000000..17f6818 --- /dev/null +++ b/Documentation/SupportingDocumentation/DatabaseScripts/oradim_start.cmd @@ -0,0 +1,2 @@ +REM $Id$ +oradim -STARTUP -SID webmip -STARTTYPE srvc