Loading [MathJax]/jax/output/CommonHTML/config.js
社区首页 >问答首页 >用ReadOnly连接Python中的Server

用ReadOnly连接Python中的Server
EN

Stack Overflow用户
提问于 2022-04-25 13:05:57
回答 1查看 614关注 0票数 0

我正在尝试使用pyodbc连接python中的SQL服务器。我无法连接,因为我的数据库是ReadOnly。我尝试了other link提供的解决方案

代码语言:javascript
代码运行次数:0
复制
import pyodbc
readonly_conn_str = "DRIVER={SQL Server};SERVER=...; DATABASE=...;readonly=True;"

conn = pyodbc.connect(readonly_conn_str)

但是,我仍然收到以下错误:

ProgrammingError:(“42000”,“42000ODBCSQLServer DriverThe目标数据库('PRMOperationalDB')”位于可用性组中,当应用程序意图设置为只读时,当前可供连接访问。有关应用程序意图的详细信息,请参阅Server联机丛书。(978) (SQLDriverConnect);42000ODBCSQLServer DriverInvalid连接字符串属性(0);42000ODBC Server目标数据库('PRMOperationalDB')位于可用性组中,当应用程序意图设置为只读时,可对连接进行访问。有关应用程序意图的详细信息,请参阅Server联机丛书。(978);42000 string DriverInvalid连接字符串属性(0)“

对于如何解决这个问题,有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-25 13:19:19

readonly=True是pyodbc的connect()方法的一个属性,而不是传递给Server的连接字符串的一部分。IMHO只尝试传递所有属性,而不是构建完整的连接字符串:

代码语言:javascript
代码运行次数:0
复制
conn = pyodbc.connect(driver='{SQL Server}', host=<server>, database=<db>,
  trusted_connection='yes', user='', password='', readonly = True)

或者,就像the answer you mentioned提供的那样,使用:

代码语言:javascript
代码运行次数:0
复制
conn = pyodbc.connect('driver={ODBC Driver 17 for SQL Server};'
  + 'SERVER=...;DATABASE=...;'
  + 'UID=' + user + ';PWD=' + password + ';'
  + 'ApplicationIntent=ReadOnly')

另外,您是否有意显式地连接到辅助设备?为什么不连接到AG名称,如果您的应用程序只执行读取操作,那么最糟糕的情况(比如说,有人破坏了只读路由)是,这些读取操作发生在主服务器上。您的代码永远不应该连接到特定的物理主机/集群节点,并假定它永远是只读的辅助节点.如果明天有故障转移会发生什么?谁在更新所有的连接字符串?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72005745

复制
相关文章
Python:用 peewee 框架连接 SQL Server
  Peewee 默认支持 Sqlite、MySQL、PostgreSQL 三种数据库,如果要使用其他数据库,需要同时安装扩展库。比如 SQL Server,需要安装 peewee-mssql。
丹枫无迹
2019/03/15
1.3K0
Python 连接Sql Server数
Python 想要和MSSql数据库进行交互,首先要下载名为"pymssql"的包,然后import该包即可。
py3study
2020/01/09
3.1K0
python连接SQL Server数据
工具:django-pyodbc-azure django-pyodbc-azure这个工具是目前据我所知最好用的django链接mssql的库 它有很多版本,需要配合你的Django版本,来下载。附上网址:https://pypi.org/project/django-pyodbc-azure/1.11.0.0/ 可以从历史版本里看看说明文档,看是否适合你的django版本,这里看1.11版本的说明文档。
py3study
2020/01/07
2.8K0
如何巧妙的用Xshell连接Ubuntu server服务主机
我们在安装Ubuntu server的时候默认是不安装openssh服务的,导致今天小编在使用Xshell连接时显示连接失败。
小Bob来啦
2021/03/10
9880
如何巧妙的用Xshell连接Ubuntu server服务主机
python连接sql server并执
python操作sql server,可以使用pymssql,成功安装pymssql后,按照如下的方法,可以连接数据库并执行查询操作:
py3study
2020/01/07
8210
说说Python中连接字符串用join还是+?
小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。
程序员小猿
2021/01/19
8890
说说Python中连接字符串用join还是+?
答:两者都可以用于 Python 连接字符串,我们先来个简单的例子,看看两者怎么用法?
用户1564362
2019/11/27
1.1K0
vueJs中readonly与shallowReadonly函数的使用比较
让一个响应式数据变为只读的,接收一个响应式数据,经过readonly加工处理一下,那么新赋值的数据都不允许修改
itclanCoder
2023/02/26
9120
vueJs中readonly与shallowReadonly函数的使用比较
static、const、readonly与static readonly的区别与联系
修饰范围:类、字段、属性、方法、运算符、事件、构造函数(不能用于索引器、析构函数或类以外的类型)
跟着阿笨一起玩NET
2022/03/09
1.5K0
C#中const与readonly区别
一句话:const的值是固定的,代码里面写死的,每一次编译后结果都一样,而readonly的值是可以在运行的时候才确定值的。
崔文远TroyCui
2019/02/26
6100
用python连接冰蝎的代码实现
时代在发展,大家用后门的姿势也在不断的变化,从菜刀,到蚁剑,再到如今的冰蝎,这也是攻防相互作用的结果,今天头发奇想,如何用python来实现流量的加密。然后就研究了一番,写出来了一些蹩脚的代码还望大佬们不要嫌弃。
用户5878089
2019/11/07
1.5K0
用navicat 连接sqlserver提示要安装 sql server native client
打开navicat安装目录,找到navicat自带sqlncli_x64.msi,安装后问题解决!
全栈程序员站长
2022/11/03
1.2K0
DataGrip连接SQL server
要将SQL Server Browser 和 SQL Server (SQLEXPRESS)运行。
无道
2019/11/13
5.7K0
DataGrip连接SQL server
详解SQL Server连接(内连接、外连接、交叉连接)
在查询多个表时,我们经常会用“连接查询”。连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志。
程序猿小亮
2021/01/28
3.8K0
readonly 和 disable的区别
readonly和disabled它们都能够做到使用户不能够更改表单域中的内容。但是它们之间有着微小的差别,总结如下: Readonly只针对input(text / password)和textarea有效,而disabled对于所有的表单元素都有效,但是表单元素在使用了disabled后,当我们将表单以POST或GET的方式提交的话,这个元素的值不会被传递出去,而readonly会将该值传递出去(readonly接受值更改可以回传,disable接受改但不回传数据)。 一般比较常用的情况是:
HTML5学堂
2018/03/12
1.4K0
readonly与shallowReadonly
在 Vue 3 的 Composition API 中,readonly 和 shallowReadonly 是两个用于创建只读数据的函数。它们可以用于将对象或数组包装成只读的响应式数据,以防止对其进行修改。
堕落飞鸟
2023/05/22
3300
用python连接Oracle是总是乱码
在使用Python开发项目过程中, 有时需使用脚本调用oracle,但会出现乱码,解决方案如下:
py3study
2020/01/10
7790
c# readonly
在C#中,readonly特性用于声明一个只读字段。一个只读字段可以在声明时或在构造函数内部进行初始化,一旦被赋予了初始值,它就不能被改变。
JusterZhu
2023/10/25
2520
c# readonly
php连接MS SQL Server
从5.3开始,PHP自带的dll不再支持2000以后的MS SQL Server了。
似水的流年
2019/12/04
1.8K0
远程连接Windows Server 2012
远程连接 mac客户端 MAC远程连接Windows客户端下载地址 安装服务器后注意事项 1)打开防火墙(不要为了省事就关闭防火墙) 2)添加入站规则 添加3389(远程连接的端口)信任 3) 开启远程连接 这时候windows下远程连接能连,mac下不能连解决方法 点击开始 > 运行 键入gpedit.msc 在左侧栏中,展开计算机配置 -> 管理模板 -> Windows组件 -> 远程桌面服务 -> 远程桌面会话主机 -> 安全 设置远程(RDP)连接要求使用指定安全层为已启用,并选择安全层为RD
码客说
2019/10/22
5.4K0

相似问题

无法用python连接到Server

12

用python中的connectorx连接MS SQL Server

216

无法用python连接到Azure Server

20

SQL Server SELECT with READONLY子句

40

用Streamlit编写连接python和Server的函数?

218
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档