none
SQLServerAgent的SSIS作業失敗 RRS feed

  • 問題

  • 我的問題與 http://ithelp.ithome.com.tw/question/10016045?tag=rt.rq#ooa_hash 這個網頁裡的人所提的問題相同!!

    一樣是使用 MYSQL為SSIS資料來源,在SSMS可以直接執行此封裝 ,之前遇到SSIS和SSMS版本不同(SQL2014和SQL2012),所以重新安裝Host,

    現在也都是SQL2014,也遇到電腦不同位元(32與64位元)的問題,已經克服,所以SSIS的封裝:Package1才能執行成功!!

    但是將這個package1新增到SQLAgent作業時就無法,在組態管理員的部份我都是設定同一組帳號(SQLServer服務,SSIS,SQLAgent),也修改過

    SSIS 封裝 ProtectionLevel 屬性設定 以及 建立使用 SQL Server Agent Proxy 帳戶 的方法,也在作業中的設定中:連接管理員(Mysql)key上密碼,也都行不通....

    究竟是為甚麼?

    我先前在另外一台Host機器上有測試過SSIS的一般來源為本機磁碟目錄的CSV檔,匯入到目的地:OLE DB(MS SQLServer),可以在Agent的作頁設定封裝並成功執行匯入,為何換成mysql 就無法...嗚嗚

    參考網頁裡的人所提的問題: "

    目前透過 sql server Agent job 執行 SSIS ,一直有權限的問題困擾,
    我的 ETL 來源資料自 mysql 資料庫,所以我將 執行 sql server Agent job 的 owner
    設定與連線mysql 資料庫的使用者帳號及密碼一致,在 sql server 也同樣新增此帳號,
    也擁有對sql server db access 的權限。 

    將 SSIS 存放在 Integration Service 的封裝區,並以手動方式執行封裝程序,是可以順利的執行完成,
    但透過 sql server agent 來執行此 Integration Service 的封裝區 ,就會產生權限的問題,不知是否還有其他的方法 ?

    http://ithelp.ithome.com.tw/question/10016045?tag=rt.rq#ooa_hash  "

    2016年1月12日 上午 07:46

解答

所有回覆

  • 發現好像是 mysql的連接的問題....

    2016年1月12日 上午 09:52
  • When you run ssis package as sql job, sql executes it under sql agent account by default. You can try set proxy account with proper MySQL permission and run the package under proxy account.
    2016年1月12日 下午 04:01
  • 我在問這個問題之前,有試著先在Instance底下的Proxy,新增Proxy帳號,

    然後再去SQL Server Agent底下的Proxy->新增Proxy,然後在新增Proxy的頁面上:認證名稱輸入先前在Instance底下的Proxy帳號,並在"對下列子系統有效"勾選"SQL Server Integration Services 封裝"

    然後接下來在作業的設定中:選取頁面:步驟->執行身分選擇剛建立的Proxy帳號,但還是無法....

    只是上述的步驟是不是沒有設定到您說的"set proxy account with proper MySQL permission" ?


    • 已編輯 HAPPYHSIN 2016年1月13日 上午 01:54
    2016年1月13日 上午 01:54
  • That accouct needs proper permission on remote data source, otherwise sql agent can't access that remote side.
    • 已標示為解答 HAPPYHSIN 2016年1月15日 上午 03:42
    2016年1月13日 上午 03:16
  • 要有存取mysql資料來源權限

    sql agent job owner建議你先設定sa 測試看看

    先確定你的proxy account是否有讀取和執行的權限


    保證解答-微軟技術支援服務

    • 已標示為解答 HAPPYHSIN 2016年1月15日 上午 03:42
    2016年1月13日 下午 12:27
    版主
  • 謝謝!! 好喔我先試試看!!
    • 已編輯 HAPPYHSIN 2016年1月14日 上午 03:27
    2016年1月14日 上午 03:27
  • 改成sa一樣嗚嗚,然後proxy account也盡量將它的權限變大了(系統管理者)

    結果還是不行....

    應該是卡在mysql那邊的來源連接問題,因為我還在研究如何帶密碼或驅動程式管理員到agent

    mysql有設定密碼....


    2016年1月14日 上午 03:46
  •  

    TO 

    (MCC, MVP) 這是您先前的文章嗎?

    參考網址:  https://www.dotblogs.com.tw/ricochen/2013/03/30/99615

    雖然版本不同,但我設定設定Package的保護等級

     EncryptAllWithPassword Level   但我卻沒有跳出密碼輸入視窗 而且它的密碼是甚麼呀

    是哪一層的密碼  ?? 是設定SSIS的目錄時的那個密碼嗎?


    • 已編輯 HAPPYHSIN 2016年1月14日 上午 05:29
    2016年1月14日 上午 05:28
  • 改成sa一樣嗚嗚,然後proxy account也盡量將它的權限變大了(系統管理者)

    結果還是不行....

    應該是卡在mysql那邊的來源連接問題,因為我還在研究如何帶密碼或驅動程式管理員到agent

    mysql有設定密碼....


    Looks like unable to connect to MySQL server. Did you install MySQL odbc driver on sql server?
    2016年1月14日 下午 01:12
  • yes,因為有安裝driver,SSIS才能連接成功匯入阿!! (見圖)但是換成Agent就無法,是不是要在SSMS中的連結伺服器設定?


    • 已編輯 HAPPYHSIN 2016年1月15日 上午 01:59
    2016年1月15日 上午 01:58
  • 我找到原因啦!!!

    原來是在ODBC資料來源管理員中,要新增資料來源,要選擇"系統資料來源名稱"來安裝

    謝謝各位!!

    2016年1月15日 上午 03:41