SQL1159 Initialization error with DB2 .NET Data Provider, reason code 7

需要注册GAC,修改注册表

IBM官方方案:

http://www-01.ibm.com/support/docview.wss?uid=swg21618434

Technote (troubleshooting)

Problem(Abstract)

This technote contains recommendations and guidance to address problems encountered during installation of the IBM Data Server Driver Package (ds driver) on Microsoft Windows 8 and Windows Server 2012 systems.

Resolving the problem

IBM Data Server Driver 
Guidelines for known issues on Windows 8 and Windows Server 2012 

This technote provides recommendations and guidance to address the problems encountered during installation of the IBM Data Server Driver Package (also referred to as ‘ds driver’) on Microsoft Windows 8 and Microsoft Windows Server 2012 systems. It is also applicable for the below products:
· IBM Data Server Client
· IBM Data Server Runtime Client
· Any IBM DB2 LUW Server Package

These instructions are for the installation of the Data Server Driver. If installing other client packages, use the appropriate installation path and install copy name for that package.

Installing Data Server Driver on Windows 8 or Windows Server 2012

Step 1) 
Ensure the .NET Framework 3.5 is installed on the machine before installing the IBM Data Server Driver package. To install .NET Framework 3.5, the Specify settings for optional component installation and component repair option should be enabled, located under;

     Computer Configuration > Administrative Templates > System

For details, refer: http://msdn.microsoft.com/en-us/library/windows/hardware/hh975396.aspx
You can now proceed to Step3.

Step 2) 
If .NET Framework 3.5 is not installed in Windows 8 or Windows Server 2012 machine, then during installation of the IBM DB2 ds driver it might show pop-up error messages such as indicated in Figure1. It is recommended that you follow the above instructions to install .NET Framework 3.5 before installing IBM DB2 ds driver. Also, if IBM DB2 ds driver is installed prior to installation of the .NET Framework 3.5, it is recommended to uninstall IBM DB2 ds driver, install the .NET Framework 3.5 and then re-install the IBM DB2 ds driver product.

Figure1: Pop-up installation error prompting for MS .NET FW 3.5

Step 3) 
You shall now be able to proceed with the IBM Data Server Driver installation.

1. Following are the additional steps to be performed after installation of the IBM DB2 ds driver on Windows 8/Windows Server 2012. This is especially to ensure proper functioning of the IBM DB2.NET provider on Windows 8/Windows Server 2012.

2. To ensure proper registration of the DB2 .NET assemblies to the GAC (Global Assembly Cache), there is a need to execute the following commands using the Gacutil (Global Assembly Cache Tool) at the command prompt with Administrative privileges. Gacutil is part of the Windows SDK (which can be installed from: http://msdn.microsoft.com/en-us/windows/desktop/hh852363.aspx#Related ) and also comes bundled with Visual Studio. If you have Visual Studio installed, it is recommended to use the Visual Studio Command Prompt for the below commands:

64-bit Windows platform 
run the following commands:
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf20_32\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf40_32\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf20_32\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf40_32\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.DB2.Entity.dll”
gacutil /i “<ds driver installation Path>\bin\netf20_32\IBM.Data.DB2.Entity.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.DB2.Entity.dll”
gacutil /i “<ds driver installation Path>\bin\netf40_32\IBM.Data.DB2.Entity.dll”

32-bit Windows 8 
run the following commands:
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.DB2.dll”
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.Informix.dll”
gacutil /i “<ds driver installation Path>\bin\netf20\IBM.Data.DB2.Entity.dll”
gacutil /i “<ds driver installation Path>\bin\netf40\IBM.Data.DB2.Entity.dll”

Place holder <ds driver installation Path> refers to the ds driver installation Path. It should be replaced with the actual path of ds driver installation while executing above commands. 
Example for ds driver path:

     C:\Program Files\IBM\IBM DATA SERVER DRIVER

3. Additionally the following registry key values need to be verified and added if not already present. 
Run 'regedit' command.

Figure 2: Launch ‘regedit’ 

The string values for <version>.DEF.2 and <version>.DEF.4 in the below mentioned registry paths needs to be verified.

HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\InstalledCopies
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\IBM\DB2\InstalledCopies (this is not applicable for 32-bit Windows 8)

After successful installation of ds driver, above mentioned two paths will have two registry entries each. This includes ‘(Default)’ and ‘defaultClientInterfaceCopy’ and the Data value as the ds driver's copy name. By default ds driver's copy name is expected to be IBMDBCL1. Two more registry entries/keys, <version>.DEF.2 and <version>.DEF.4, should be present in each of the above mentioned two paths. To add registry entries right click in the right portion of the window, select New=>String Value. Eg: in the case of IBM ds driver V10.1 FP1 installation, the entries would need to be 10.1.1.DEF.2 and 10.1.1.DEF.4. Also in the case of v9.7 FP6 the version needs to be 9.7.6.DEF.2 and 9.7.6.DEF.4. Right click on the just created String value and select Modify to enter the same value that was present for defaultClientInterfaceCopy (in this case IBMDBCL1). Refer to Figure3 on the required registry structure and values.

Figure 3: Set registry values for DEF.2 and DEF.4 entry

SQL1159 Initialization error with DB2 .NET Data Provider, reason code 7(问题补充)的更多相关文章

  1. 启用SQLite的Data Provider 运行WECOMPANYSITE时遇到ERROR CREATING CONTEXT 'SPRING.ROOT': ERROR THROWN BY A DEPENDENCY OF OBJECT 'SYSTEM.DATA.SQLITE'

    从网上下载的源码WeCompanySite,运行时报错 Error creating context 'spring.root': Error thrown by a dependency of ob ...

  2. error 0152: No Entity Framework provider found for the ADO.NET provider with invariant name 'System.Data.SqlClient'

    error 0152: No Entity Framework provider found for the ADO.NET provider with invariant name 'System. ...

  3. SQL2008安装时,“provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (.Net SqlClient Data Provider)” 错误的解决方案

    错误提示: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provide ...

  4. 异常:error 0152: No Entity Framework provider found for the ADO.NET provider with invariant name 'System.Data.SqlClient'

    error 0152: No Entity Framework provider found for the ADO.NET provider with invariant name 'System. ...

  5. CodeSimth - .Net Framework Data Provider 可能没有安装。解决方法

    今天想使用CodeSimth生成一个sqlite数据库的模板.当添加添加数据库的时候发现: .Net Framework Data Provider 可能没有安装. 下面找到官方的文档说明: SQLi ...

  6. 超时时间已到。在操作完成之前超时时间已过或服务器未响应。 (.Net SqlClient Data Provider)

    超时时间已到.在操作完成之前超时时间已过或服务器未响应. (.Net SqlClient Data Provider) 在做一个小东西的时候出现了这个问题,就是使用VS调试几次项目后,使用SQL Se ...

  7. error CS0007: Unexpected common language runtime initialization error -- '没有注册类别 '

    Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]"Inst ...

  8. CodeSimth - .Net Framework Data Provider 可能没有安装。解决方法[转载 ]

    原文:http://www.cnblogs.com/chenrui7/p/3592082.html 今天想使用CodeSimth生成一个sqlite数据库的模板.当添加添加数据库的时候发现: .Net ...

  9. Oracle Data Provider for .NET的使用(托管与非托管(一))

    目录 简单的概述 简单的使用 非托管系统要求 托管驱动系统要求 其它的注意事项 ODP.NET版本说明 安装ODP.NET 安装非托管驱动 非托管驱动绿色配置 简单的概述 ODP.NET的含义是 Or ...

随机推荐

  1. dubbo的安装和使用

    dubbo的安装和使用

  2. hibernate对象三种状态

    在Hibernate中,对象有三种状态:临 时状态(Transient).持久状态(Persistent)和游离状态(Detached). 处于持久态的对象也称为 PO(PersistenceObje ...

  3. Redis教程(九):主从复制配置实例

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/136.html 一.Redis的Replication: 这里首先需要说明 ...

  4. 【Android】线程池原理及Java简单实现

    线程池简介 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力. 假设一个服务器完成一项任务所需时间为: T1 创建线程时间 T2 在线程中 ...

  5. 使用Swift代码演示Cocoa框架

    通过使用简单的代码学习Cocoa框架,每一个例子都通过代码和StoryBoard实现,并且总结他们的各自特点 所有完整代码将会托管到github库,https://github.com/land-pa ...

  6. C# winform的WebBrowser非常规编程(强烈推荐)

    本文章被今日头条推荐 1.在WebBrowser中实现抓取301和302协议 在WebBrowser中抓取301和302协议目前官方提供的组件远远不够,需要借助HttpMonitor.dll.这个组件 ...

  7. HtmlDocument

    HtmlDocument HtmlDocument类对应着一个HTML文档代码.它提供了创建文档,装载文档,修改文档等等一系列功能,来看看它提供的功能. 一.属性 int CheckSum { get ...

  8. Windows7下面exe寄宿WCF:Http无法注册URL{0} ,进程不具有此命名空间的访问权限问题

    运行寄宿exe程序的时候通过run as administrator来启动就OK了.

  9. 通过生产者消费者模式例子讲解Java基类方法wait、notify、notifyAll

    wait(),notify()和notifyAll()都是Java基类java.lang.Object的方法. 通俗解释wait():在当前线程等待其它线程唤醒.notify(): 唤醒一个线程正在等 ...

  10. apache的hadoop升级到CDH hadoop2.0时遇到的问题及解决

    1:引入的jar包 1.X版本有hadoop-core包:而2.x没有 如果你需要hdfs就引入\share\hadoop\common\lib + hadoop-common-2.0.0-cdh4. ...