zoukankan      html  css  js  c++  java
  • C#通过Oracle.ManagedDataAccess无法访问Oralce

    问题描述:
    通过C#引用Oracle.ManagedDataAccess.dll访问Oracle,写了如下一段代码,在本机能正常访问,但是将编译后的exe放到服务器上面就无法访问了,一直提示登录失败。
    而服务器上面的pl/sql却能够正常访问数据库。

    static void Main(string[] args)
    {
        string connStr=string.Empty;
        try
        {
            connStr = string.Format(@"User Id={3};Password={4};  Data Source=(description=(address_list = (address = (HOST = {0})(PROTOCOL = TCP)(PORT= {1})))(connect_data=(service_name={2})));", "172.23.11.152", "1521", "orcl", "system", "oracle123");
            using (OracleConnection conn = new OracleConnection(connStr))
            {
                OracleCommand comm = new OracleCommand("select count(1) from wifi.site_info", conn);
                conn.Open();
                object a = comm.ExecuteScalar();
                conn.Close();
    
                Console.WriteLine(a);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
            Console.WriteLine("连接字符串:" + connStr);
        }
    
        Console.Read();
    }
    View Code

    解决:
    经过多方面查找资料,最后在一篇英文网站上面提到是FIPS加密的原因导致,至于如何解决,网上给到的答案大多就是将FIPS关闭了。关闭方法如下:
    1.输入regedit打开系统注册表
    2.找到路径 HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsa
    3.查看右边的FIPSAlgorithmPolicy属性修改为0
    4.找到路径 HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsaFipsAlgorithmPolicy
    5.查看右边的Enabled修改为0 即可。

  • 相关阅读:
    使用eNSP配置灵活QinQ
    使用eNSP配置端口QinQ
    python-多线程编程
    front-end plugin, generate pdf with html5 and jquery
    dotnetnuke peek. glance.
    a
    租房了,说一个奇妙的事情。
    总是容易忘记zen coding里怎么写标签text, mark一下吧
    springboot+druid连接池及监控配置
    springboot +mybatis分页插件PageHelper
  • 原文地址:https://www.cnblogs.com/duanjt/p/6955173.html
Copyright © 2011-2022 走看看