I have a DTS package that exports data to a file, then run Win32 process pkzip to compress it to make it 4MB from 30MB so it can be emailed.
As this is to be run daily, I scheduled it, i.e. created a Job.
When running as a Job it fails in the pkzip section. The sqlservice account is not an NT system account for security reasons.
I have a number of jobs that will need to be run in an adhoc fashion(no set schedule). I will be utilizing a mainframe operations staff and would like to limit their access on SQLServer as much as possible while allowing them start jobs and view history. What would be the best way to go about this? Thanks in advance.
I have several users that are a member of a Windows Nt group. I want to be able to allow this group to create, update, and delete SQL Agent Jobs. But I do not want them to be members of the SYSADMIN role. Everything that I have found states that they must be members of this server role to perform these actions. Does anyone have an idea on how to accomplish this? or point me in some kind of direction to explore.
I have a job with a single ActiveX step that I have setup and am having problems running.
If i set the SQL Server Agent to run as an Administrator then my job processes fine however under the default setup which has the SQL Server Agent running as Local System I get an error.
I assume this is permissions problem so I created a basic windows user called ABC. I then created a credential called ABC linked to the windows user ABC. I then created a proxy that uses the credential ABC and then ticked the box that allows the proxy to run ActiveX scripts. I then set the ABC as a principle of the proxy.
I then set my single job step to be run under the ABC credential.
Still no luck. This is the first time i've worked with this sort of thing so I'm not sure if I'm going about it in the right way.
Please explain how i can have a job that runs as an active X script. I understand running sql server agent as administrator is bad for security so what are the alternatives?
This is sort of a DR issue since it involves reboots and power failures.
We have MSSQL 2005 SP1 and unpatched systems, but in particular we have this problem still with the SP1 server (in addition to the unpatched systems). Running on Win 2k3.
It seems that upon reboot, our stored SSIS jobs lose their pemissions and/or ownership for execution. It doesn't happen at every reboot or power failure, but seemingly more than half the time.
Here is the error reported: The job failed. The owner () of job Job_1 does not have server access.
But checking the properties of the job and it shows an valid owner in the Owner field. I believe we are using Active Directory for authentication and the user listed is valid in that respect.
We have "fixed" this problem before by removing the job completely and re-installing it, with the same owner. No issues until the next system outage.
Has anyone else seen this before? Is there a fix or is this some kind of bug?
This is the first time, I am creating a job in SQL server 2000. I have to create few jobs, which can restore the databases at midnight, daily, on the server. We use lite speed backup sofware to take the backup and backup is stored at different location. We have a lite speed script, which we use to restore the backup. In Job step I have wrote down the script and scheduled the job. But when I try to test the job It never runs. I do not know if something else I am supposed to do after creating a job, even I tried to run it manually it doesnot work. Please help !!
I have a backup job which runs on sqll server 2000. About every two weekes the job doesn't complete. I t doesn't fail but just stays at executing until it's stopped. I t then won't run again until the server is rebooted. Anyone any ideas on what might course this. The database is approx 1.5 gig. It backs up between 5 and 8 hours. Normally there should be none or very little access to the database whilst it is backing up. The db is used for an intranet application.Any help much appreciated!Cheers
Jobs not running within SQL Server Agent on SQL7 despite being schedulled. The only explanation I can think of for causing this is due to a date correction on the NT Server ( backwards ) by the NT Administrator. I can run jobs manually, but the scheduled run times are being ignored.
I'm hoping that the jobs will start running again as schedulled when the system catches up to the date it was previously at.
Has anyone had experiences of this and found a way to get things running again ?
We have DTS Packages that are scheduled to run nightly and show up in EM under JOBS under SQL Server Agent. A password got changed and some of the nightly jobs blew up.
Went into the Packages and entered the new password and successfully executed the packages BUT when I go back to jobs under the SQL Server Agent, the jobs STILL will not run - they fail with a login failure - as if i never fixed the DTS package. HELP
hi every 1, i am having a real tough time to figure this one out .
i need to find out what jobs are schedule in the server that sends data out to ever . we are doing the migration from 2000 to 2005 and need to know which jobs send data to the another server . i looked at the sysjobs_view , it tells the origination server and all the jobs that are running on it, but that's pretty much it. on the sql agent , i see all the jobs but dint know which jobs are sending data out side the server . some jobs are regular backup maintenance jobs how will I figure out which once are gong out . hope you people can help . any help will be so much appreciated. bobby
HI Guys. i cannt' understand what's going on the server.. actually i have created a two jobs for full backup for my databases.. One is running perfect but one is giving me following error.
Can any one tells me where i m doing mistake.
Message Executed as user: Domainuser. Cannot open backup device 'Database_Full(\192.0.0.1BackupsFULL_Backupsdatabase_Full.BAK)'. Operating system error 53(error not found). [SQLSTATE 42000] (Error 3201) BACKUP DATABASE is terminating abnormally. [SQLSTATE 42000] (Error 3013). The step failed.
I have SQLServer 6.5 SP5a update running on Windows NT 4.0 SP6 with 4 gig RAM and 4 processor.
Suddenly the SQL 6.5 jobs running on the production server started running very very slow. A job that suppose to run in 30 minutes are running like 2 hours and completing successfully.
(I suspect the after the Norton Anti virus automatic live update may be the reason but not the Second Vulnerability as mentioned by Microsoft Bulletin last week)
I check the SQLServer, ran the performance monitor, checked pagefiles, disk space, databases,memory, tempdb. Everything seems to be normal.
I rebooted the server, checked any other process making that slow. But no use.
Please help me out with this issue as this is a production and the CRM applications from the clients uses the database server.
I've got the stored procedure which first creates and then starts a job. This stored procedure can be invoked from a number of triggers (after insert, after update) The problem is: when a sequence of statements is being executed one by one (like an insert immediately followed by several updates) and the stored procedure is invoked from the propper insert or update trigger once for each statement, the jobs are created in the right order (first for insert statement, then for updates in the order of the initial statements), but are executed in the wrong order.
Is there any explanation to this? And any solution? The order of such jobs execution is vital for my application.
Thanx a lot in advance.
Please see the enclosed screenshot for an example list of jobs. Name of the job contains time of it's creation and another column shows the time the job was executed.
I’m trying to write a script that will detect long running agent jobs.
Having looked at this article: http://www.databasejournal.com/features/mssql/article.php/3500276
It appears that agent job job id’s don’t necessarily get stored in the programname of the sysprocesses table. This is true if the agent executes an os command. It also appears that job steps do not get stored in the sysjobhistory until the step is complete so that cannot be used accurately.
Does anyone know of an effective way to find if there are long running jobs other than these methods?
I'm trying to configure mirroring with High Availability, Automatic Failover.
I know that all the jobs and maintenance plans need to be copied to the mirror server, and enabled if a mirror database takes over the principal role.
I wonder if it is a good solution to have all agent jobs on the Witness server (no jobs on principal and mirror). And all the jobs select the server where they should run (depending on current role).
One of the advantages of this approach would be that the jobs have to be created only once on the witness.
Will this solution work? What are the downsides of it?
I€™m trying to write a script that will detect long running agent jobs.
Having looked at this article: http://www.databasejournal.com/features/mssql/article.php/3500276
It appears that agent job job id€™s don€™t necessarily get stored in the programname of the sysprocesses table. This is true if the agent executes an os command. It also appears that job steps do not get stored in the sysjobhistory until the step is complete so that cannot be used accurately.
Does anyone know of an effective way to find if there are long running jobs other than these methods?
Does Anyone of the SQLServer Guru has a smart script to alert DBA by email for failed jobs or jobs running more then their normal time(long running jobs), so that I dont have to go and look at the jobs everyday manually...on different servers...
Hi. I was wondering if anyone has ever had a problem where nothing seems to be wrong with the server, and SQL Server Agent is up and running, but jobs fail. We had a job run at midnight, and it was the last successful run. Every job failed after that, with an error stating "Unable to retrieve steps for job..." There doesn't seem to be any reason for the problem. The jobs were kicked off manually and they all ran.
The only other error messages we could find were in the Application Event Viewer on the server. But the first error happened days ago and said this: "The description for Event ID ( 0 ) in Source ( .NET Runtime ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: Unable to open shim database version registry key - v2.0.50727.00000."
Since then, every few seconds this error occurred: "Windows cannot load extensible counter DLL MSSQLServerOLAPService, the first DWORD in data section is the Windows error code."
We turned off the performance monitor counters and that error stopped. But we still have no idea if that was the cause of the problem.
This isn't the first time we've had an issue with jobs failing because the steps couldn't be 'found', while SQL Server Agent was up and running.
I would like to create an SSIS package in 2005 and run it in 2000. Is there anyway to do this? Or does SQL Server 2000 have a precursor to SSIS? I am trying to create a job to automatically catch and kill orphaned processes. -Kyle
I try to find out how many jobs where run in parallel on my server in an interval of time. For example: between 1:00 AM and 2:00 AM there were MAX 66 jobs that run in parallel and MIN 4 jobs. I am not sure if I can find this info out from a system view or I need to play with sysjobhistory view.
Any sql script or powershell script which outputs late running jobs? Currently I am using the below script to find out currently running jobs along with duration. But my requirement is to add few more columns to the query which indicates whether jobs is running fine or running behind expected time.
-currently using query to pull running jobs SELECT    ja.job_id,    j.name AS job_name,    ja.start_execution_date,        ISNULL(last_executed_step_id,0)+1 AS currently_executing_step_id,    [code]...
Developers have complained that some of their jobs are taking too long to run. I used Profiler to trace one really bad performer and could see that the code was making one pass through its loop in about 7 seconds. I found one select statement that was using the majority of the time, plugged it into query analyzer and looked at the execution plan. It was using an index but not very efficiently. I then ran it through index analysis and it recommended a new index. This was cool! The new index helped.
But, the job continued to run very, very slowly - over a week before it died! I ran another trace, and it was hanging for 10+ seconds in random locations. Sometimes it would be on a database call, sometimes it would be on a simple SET @variable = value statement. There was no pattern. According to the sys admin, the server itself did not look taxed. It does not appear to be a locking problem because of the random location of the stall. The application and server are only lightly used at this point, so I would hate to see how bad it could be if it was busy.
I am still fairly new to SQL, though I have years of DBA experience. I would appreciate any ideas - especially the obvious things that I am probably not considering. I have logged a call with Microsoft but they haven't gotten back with an answer. I sent them a trace file and a perfmon file, neither of which showed them anything.
When I give job Id in filter of this query this will give job status of "Success" but actually my job is currently in executing stage. I want to get all jobs that are currently in executing status.
Use msdb go select distinct j.Name as "Job Name", --j.job_id, case j.enabled when 1 then 'Enable' when 0 then 'Disable'
Using SQL Server 2k5 sp1, Is there a way to deny users access to a specific column in a table and deny that same column to all stored procedures and views that use that column? I have a password field in a database in which I do not want anyone to have select permissions on (except one user). I denied access in the table itself, however the views still allow for the user to select that password. I know I can go through and set this on a view by view basis, but I am looking for something a little more global.
In my environment, there is maintenance plan configured on one of the server and while running DBCC checkdb on a database of size around 200GB, log file usage of tempdb is increasing and causing the maintenance job to fail.
What can I do to make the maintenance job run successfully, size of the tempdb database is only 50GB and recovery model is set to simple. It cannot be increased as the mount point on which it is residing is 50GB.