Asp.net Core 6.0 之Linux连接SqlServer

目标:部署在Ubuntu 21.10上的Asp.net Core 6.0能连接Windows上的Sqlserver.

上一篇已经可以在Ubuntu上打开Asp.net 的站点了,现在就解决数据库连接的问题。

1.首先先不管程序能否连的上,先要试下在命令行下能否连接SQL。这也是为了测试能否物理上连接是否有问题。

a)ubuntu中连接mssql数据库_瞧字不识-CSDN博客_ubuntu 连接mssql,参照此文,连接成功:

sudo apt-get install tdsodbc

sudo apt-get install sqsh

sqsh -U 用户名 -P 密码 -S 服务器地址

这个用的是tdsodbc

b)另外还有用unixodbc的,安装时总出错,意思是依赖的不是stable,安装不成功

直接采用a)方法即可,在命令行上可以查询出数据库内容,连接测试完成

2.接下来打开有数据访问的页面,意料之中的出现错误:

a)在命令行窗口看出错提示,是log4net记日志的一行代码,先禁用这句

b)再编译,还是有错,这次的提示是:

A connection was successfully established with the server,but then an error occurred during the pre-login handshake.(provider:SSL provider,error:31.....

参照这篇文章

.Net Core部署Linux的坑 - 山治先生 - 博客园

是TLS 不兼容的原因,要修改

1. sudo vim /etc/ssl/openssl.cnf

2. 在 oid_section = new_oids 下增加:

openssl_conf = default_conf  

3.文件末尾追加:

[default_conf]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1
CipherString = DEFAULT@SECLEVEL=1

修改后要重启才能生效,至此访问数据的页面可以正常打开

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值