Sql server SQL Server 2000计划作业
实际上,我的工作是从一个mysql数据表到一个sqlserver表备份数据 因此,我在SQLServer2000中创建了一个DTS包。当我手动运行包时,它成功运行,没有任何错误,数据从MySQL传输到SQL Server 但是当我使用调度作业运行包时,我得到了以下错误 DTSRun:正在加载…Sql server SQL Server 2000计划作业,sql-server,sql-server-2000,Sql Server,Sql Server 2000,实际上,我的工作是从一个mysql数据表到一个sqlserver表备份数据 因此,我在SQLServer2000中创建了一个DTS包。当我手动运行包时,它成功运行,没有任何错误,数据从MySQL传输到SQL Server 但是当我使用调度作业运行包时,我得到了以下错误 DTSRun:正在加载… DTSRun:正在执行… DTSRun OnStart: DTSStep\u DTSDataPumpTask\u 1 DTSRun ONERR:DTSStep\u DTSDataPumpTask\u 1,
DTSRun:正在执行…
DTSRun OnStart:
DTSStep\u DTSDataPumpTask\u 1 DTSRun ONERR:DTSStep\u DTSDataPumpTask\u 1, 错误=-2147467259(80004005)错误字符串:[Microsoft][ODBC 驱动程序管理器]未找到数据源名称,也没有默认驱动程序 指定的错误源:用于ODBC驱动程序的Microsoft OLE DB提供程序 帮助文件:帮助上下文:0 错误详细记录: 错误:-2147467259(80004005);提供程序错误:0(0)
错误字符串:[Microsoft][ODBC驱动程序管理器]未找到数据源名称 并且没有指定默认驱动程序
错误源:用于ODBC驱动程序的Microsoft OLE DB提供程序
帮助文件:帮助上下文:0 DTSRun OnFinish:DTSStep\u DTSDataPumpTask\u 1 DTSRun:包执行 完成
因此,请在这方面帮助我….正如评论员提到的,这可能是一个数据源配置问题-如果您已将MySQL DSN设置为用户DSN而不是系统DSN,则需要对此进行更改。打开ODBC配置工具,转到“系统”表,而不是“用户”(默认设置)并在那里创建数据源 这也可能是ax x64问题-如果您使用的Windows版本是x64,则默认情况下打开的ODBC面板将显示x64数据源。如果您使用的是x86版本的SQL Server(SQL 2000两者都有),则需要在x86 ODBC管理员中创建数据源,该管理员可以从以下位置启动: C:\Windows\SysWOW64\odbcad32.exe
一旦它们被推出,它们看起来完全一样,所以很难判断你打开了哪一个。一个常见的指标是x64驱动程序列表通常要短得多——在我的机器上,x86版本大约有25个驱动程序,而x64版本只有3个。请记住,如果您使用的是SQL 2000 x86,您还需要安装x86版本的MySQL驱动程序,即使您的服务器是x64。随便猜一猜,MySQL ODBC DSN是用户或文件DSN,但应该是系统DSN。作业以SQL代理帐户运行,而不是以您的身份运行,因此,当您以计划作业的形式运行作业时,如果某些内容不起作用,则几乎总是a)权限或b)用户环境。在本例中,“未找到数据源名称”似乎是一个相当明显的错误。