কাজের সময়সূচীতে চলছে না


11

সুতরাং আমার কাছে একটি বেসিক এসকিউএল এজেন্ট কাজ রয়েছে যা সমস্ত ফাইলকে একটি ফোল্ডার থেকে অন্য ফোল্ডারে সরানোর জন্য একটি রবোকপি স্ক্রিপ্ট চালায়।

চাকরী একটি সুন্দর প্রাথমিক সেট আপ। সক্ষম করা

একটি সুন্দর বেসিক সময়সূচী সঙ্গে।

তফসিল

এবং এখনও এটি চালানো বাকি। আমি সাফল্যের সাথে রান করা বলতে চাই না মানে মোটেও রান করা mean এটি হতে পারে কোন কারণ আছে?

অতিরিক্ত তথ্যের জন্য আমি কাজটিও স্ক্রিপ্ট করব।

USE [msdb]
GO

/****** Object:  Job [MoveMantisFilesToArchive]    Script Date: 12/23/2015 10:21:52 AM ******/
BEGIN TRANSACTION
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0
/****** Object:  JobCategory [[Uncategorized (Local)]]]    Script Date: 12/23/2015 10:21:52 AM ******/
IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
BEGIN
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

END

DECLARE @jobId BINARY(16)
EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'MoveMantisFilesToArchive', 
        @enabled=1, 
        @notify_level_eventlog=0, 
        @notify_level_email=2, 
        @notify_level_netsend=0, 
        @notify_level_page=0, 
        @delete_level=0, 
        @description=N'Moves Mantis files to archive. It''s a very descriptive title.', 
        @category_name=N'[Uncategorized (Local)]', 
        @owner_login_name=N'sa', 
        @notify_email_operator_name=N'MyEmailGroup', @job_id = @jobId OUTPUT
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
/****** Object:  Step [Move the files in the afformentioned title.]    Script Date: 12/23/2015 10:21:53 AM ******/
EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'Move the files in the afformentioned title.', 
        @step_id=1, 
        @cmdexec_success_code=0, 
        @on_success_action=1, 
        @on_success_step_id=0, 
        @on_fail_action=2, 
        @on_fail_step_id=0, 
        @retry_attempts=0, 
        @retry_interval=0, 
        @os_run_priority=0, @subsystem=N'CmdExec', 
        @command=N'robocopy MySoruce MyDestination /mov', 
        @flags=0, 
        @proxy_name=N'RunsAs'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'M-F', 
        @enabled=1, 
        @freq_type=8, 
        @freq_interval=62, 
        @freq_subday_type=1, 
        @freq_subday_interval=0, 
        @freq_relative_interval=0, 
        @freq_recurrence_factor=1, 
        @active_start_date=20151218, 
        @active_end_date=99991231, 
        @active_start_time=170000, 
        @active_end_time=235959, 
        @schedule_uid=N'bcb83273-19e8-49fb-a456-8517642370e3'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
COMMIT TRANSACTION
GOTO EndSave
QuitWithRollback:
    IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
EndSave:

GO

ঠিক আছে যখন এটি মূলত সেট আপ হয়েছিল এটি পরিষেবা অ্যাকাউন্ট হিসাবে চলছিল। এর পর থেকে এটি অন্য অ্যাকাউন্টে পরিবর্তিত হয়ে ঠিক চলছে।
জেন

উত্তর:


4

এই প্রশ্নের ভাষ্য: এই পোস্টটি সন্ধান করে আমি পর্যবেক্ষণ করেছি যে আপনার কাজটি মূলত 'সা' হিসাবে চলছিল। দেখা যাচ্ছে যে আপনার এসকিউএল সার্ভারের জন্য পরিষেবা অ্যাকাউন্টটিতে প্রয়োজনীয় ফাইল শেয়ারের অধিকার দেওয়া হয়নি

স্পষ্টতই এই কাজটি এমনভাবে দেখায় যা দেখে মনে হচ্ছে যেন এটি চিরকালের জন্য " চলমান "। অবশ্যই, আসলে কিছুই হচ্ছে না।

কোনও অ-অপরিহার্য ফোল্ডারে এসকিউএল সার্ভার পরিষেবা অ্যাকাউন্টের অধিকার দেওয়া বন্ধ করে দেওয়া একটি সেরা অনুশীলন । এটি এসকিউএল সার্ভার পরিবেশটিকে অনিরাপদ ক্রিয়াকলাপগুলির জন্য শোষণ থেকে বিরত রাখতে সহায়তা করে। ( সঞ্চিত পদ্ধতিটি ডিফল্টরূপে অক্ষম থাকায় অনেক একই কারণ রয়েছে ।)xp_cmdshell

আপনি যখন saএমন অ্যাকাউন্টে স্যুইচ করেন যেটিতে ফাইল সিস্টেমের সমস্ত কাজ করার প্রয়োজনীয় অধিকার ছিল। যা অবশ্যই করণীয় ছিল।

তফসিলযুক্ত এসকিউএল এজেন্ট কাজগুলি মাঝে মাঝে দীর্ঘ সময়ের জন্য স্থির থাকে (তবে তারা এখনও 'চালিয়ে যায়' এমন চেহারা দেখায়)। সম্ভবত এটি বাহ্যিক সমস্যার কারণে যেমন ফাইল সিস্টেমে অ্যাক্সেস না পাওয়া is

এসকিউএল এজেন্ট যতক্ষণ না বিশ্বাস করে যে কাজটি "চলছে", ততক্ষণ তা আর কাজ শুরু করার চেষ্টা করবে না।

সাধারণ পাঠ:

  1. এসকিউএল সার্ভারের শাসক হিসাবে 'সা' ভাবেন, তবে অন্য কোথাও অধিকারের জন্য ভিক্ষা করতে হবে।
  2. এসকিউএল এজেন্ট কাজের ইতিহাস পর্যালোচনা করার সময়, যে চাকরিগুলি অনেক দীর্ঘ চলছে তাদের থেকে সতর্ক থাকুন। এর অর্থ সাধারণত যে এসকিউএল এজেন্ট বুঝতে পারে না যে প্রক্রিয়াটি মারা গেছে।
  3. এসকিউএল এজেন্ট কাজের জন্য সর্বদা একটি প্রক্সি অ্যাকাউন্ট ব্যবহার করার পরিকল্পনা করুন যা এসকিউএল সার্ভারের বাইরে ডেটা বা বস্তুগুলিতে অ্যাক্সেস করতে হবে। এবং নিশ্চিত করুন যে প্রক্সি ব্যবহার করছে সেই শংসাপত্রগুলিতে অধিকারগুলি মঞ্জুর হয়েছে।

এবং অবশ্যই, প্রতিটি নিয়মের ব্যতিক্রম রয়েছে।


টিএলডিআর: মনোযোগ দিচ্ছিল না এবং বোকা কিছু করলাম।
জেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.