2023年6月16日 星期五

[SQL SERVER] 設定排程備份至網路磁碟

 利用排程精靈,開啟CmdShell先掛載網路磁碟,執行備份後再移除網路磁碟。


1. 執行T-SQL,掛載網路磁碟

EXEC sp_configure 'show advanced options', 1

GO

-- To update the currently configured value for advanced options.

RECONFIGURE

GO

-- To enable the feature.

EXEC sp_configure 'xp_cmdshell', 1

GO

-- To update the currently configured value for this feature.

RECONFIGURE

GO

 

exec master..xp_cmdshell 'net use V: \\127.0.0.1/MyFolder /user:[User] [Password]'




2. 設定備份



3. 設定清除工作



4. 執行T-SQL,移除網路磁碟

exec master..xp_cmdshell 'net use V: /delete'

 

 

 

EXEC sp_configure 'show advanced options', 1

GO

-- To update the currently configured value for advanced options.

RECONFIGURE

GO

-- To disable the feature.

EXEC sp_configure 'xp_cmdshell', 0

GO

-- To update the currently configured value for this feature.

RECONFIGURE

GO

 









2023年6月14日 星期三

[ORACLE]於Linux關閉排程的process後,發現程式仍在執行該如何停止

用system帳號,先確認現在有沒有JOB在跑,並取得SID跟JOB欄位

select * from dba_jobs_running;

若Job仍再跑,則先停止Job

EXEC DBMS_JOB.BROKEN( [剛剛取得的JOB欄位] , TRUE);

接著就可刪除Session,刪除方法有兩種

1. 

ALTER SYSTEM KILL SESSION 'sid,serial#';


確認沒job在跑,檢查現在的job_queue數值

select name,value from v$parameter where name ='job_queue_processes';


發現job_queue_processes數值為1000,接下來直接暴力處理,

將job_queue_processes改為0,將queue歸0,把全部的queue踢掉。

ALTER SYSTEM SET job_queue_processes = 0;


最後將job_queue_processes改回原數值

ALTER SYSTEM SET job_queue_processes = 1000;