标签: connections

如何在不停止服务器的情况下删除与特定数据库的所有连接?

我想删除当前打开到特定 PostgreSQL 数据库的所有连接(会话),但不重新启动服务器或断开与其他数据库的连接。

我怎样才能做到这一点?

postgresql session connections

77
推荐指数
3
解决办法
19万
查看次数

如果连接丢失/中断,Postgres 长时间运行的查询是否会中止?

如果我打开到 Postgres 的连接并发出长时间运行的查询,然后断开连接(例如,终止打开连接的客户端进程),长时间运行的查询会继续运行,还是会自动中止?这个可以配置吗?

(我使用的是 Postgresql 9.2.9)

postgresql connections

25
推荐指数
2
解决办法
2万
查看次数

最大用户连接数

在 SQL Server 2012 标准版中,我知道最大用户连接数是 32,767。如果我正朝着这个数字前进,作为 DBA 我应该怎么做?

目前有 30,000 个用户连接,这个数字预计还会增加。

在此处输入图片说明

sql-server max-connections sql-server-2012 connections

25
推荐指数
2
解决办法
6万
查看次数

应用程序中的 Azure SQL 数据库“用户登录失败”,但在 SSMS 中工作正常

我想在 Azure SQL 数据库 V12 上试用包含的数据库用户功能,但是我遇到了一个对我来说似乎很奇怪的身份验证问题。

我创建了一个名为Classifier. 我将我的 IP 添加到防火墙规则中,以便我可以从工作站上的 SSMS 连接到 Azure db 服务器。一旦我能够通过 SSMS 连接以进行管理,我尝试向数据库添加一个带有密码的用户,如下所示:

CREATE USER classifier WITH PASSWORD='thepassword'
Run Code Online (Sandbox Code Playgroud)

我还将此用户添加到数据写入者和读取者角色中:

exec sp_addrolemember 'db_datawriter', 'classifier'
exec sp_addrolemember 'db_datareader', 'classifier'
Run Code Online (Sandbox Code Playgroud)

在此之后,我可以使用来自 SSMS 的这些凭据连接到数据库:

在此处输入图片说明

但这就是事情出错的地方:我尝试了几种不同的连接字符串咒语,但似乎无法在我正在开发的网络应用程序中建立连接。它在 Azure 环境中不起作用,所以我在 localhost 上运行,并带有到 Azure 数据库的连接字符串,但它无法连接。这是我目前使用的连接字符串:

<add name="Classifier" connectionString="Data Source=xxxxxxx.database.secure.windows.net;Initial Catalog=Classifier;User ID=classifier;Password=xxxxxxxxxxxxx;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" providerName="System.Data.SqlClient"/>
Run Code Online (Sandbox Code Playgroud)

我尝试为用户重置密码(通过 SSMS),然后更新连接字符串;我还通过将密码从该连接字符串中复制到 SSMS 中的连接对话框中来仔细检查密码,以确保那里没有某种类型的拼写错误。

我在 Azure db 服务器中启用了审计,希望得到一些关于它失败原因的详细信息,但我得到的只是:

错误 18456,级别 14,状态 1,Sever SQL Azure,第 1 行用户“分类器”登录失败

这就是我被困的地方。我通过文档或博客找到的大部分内容表明要做的是查看 SQL Server 日志以查看真正的错误状态是什么,这将更狭隘地表明失败的性质,但是由于我正在处理 Azure 没有办法做到这一点(据我所知)。

什么会导致应用程序在 SSMS(以及 LinqPad 和 Visual Studio Server Explorer,顺便说一句)成功的情况下失败?

authentication azure-sql-database connections

19
推荐指数
2
解决办法
4万
查看次数

如何解决“无法通过套接字连接到本地 MySQL 服务器”错误?

每次尝试重新启动 MySql 时,我都会收到以下错误。在我更改默认数据目录之前它工作正常。

ERROR 2002 (HY000): 无法通过 socket '/var/lib /mysql/mysql.sock' (111) 连接到本地 MySQL 服务器

我知道其他人发布了其他解决方案,但没有一个对我有用。

mysql errors startup connections

14
推荐指数
3
解决办法
35万
查看次数

如何检查与 Sql Server 的连接是否加密?

在 SQL Server 中,我可以在协议设置中“强制加密”。如果我将该设置保留为“否”,则任何客户端仍可能需要加密。

我能以某种方式查看到数据库的哪些连接正在使用加密吗?

sql-server encryption connections

12
推荐指数
2
解决办法
3万
查看次数

如何通过 SSMS 拒绝某些登录访问 SQL Server,但允许通过 .Net SqlClient 数据提供程序

我们有一种情况,开发人员没有任何UPDATE权限,但他们使用应用程序并查看连接字符串 -> 他们知道来自某些SQLLogin1具有 UPDATE 权限的SQL 帐户(示例)的密码。我们目前的操作并不完善,有时需要修改生产数据(目前还没有 GUI)。

开发人员没有联系 DBA 并要求他修改数据,而是(不正确地)使用 SQL 帐户SQLLogin1(有权修改数据),并通过 SQL Server Management Studio 连接自己修改数据。

DBA 无法SQLLogin1在 Developer 看到新连接字符串和新密码的情况下更改密码,因为使用的应用程序连接字符串SQLLogin1是由 Developer 维护的。

题:

有没有办法拒绝访问SQLLogin1SQL 登录,但前提是它通过 SSMS 连接?

同时如果SQLLogin1正在连接.Net SqlClient Data Providerprogram_namesys.dm_exec_sessions),必须允许登录。

这样我们就不想让开发人员使用 SSMS 连接SQLLogin1,而使用的应用程序SQLLogin1仍然可以连接。

sql-server permissions access-control logins connections

12
推荐指数
3
解决办法
4811
查看次数

查找访问特定 SQL Server 的所有 IP 或用户

假设我找到了一个 SQL Server,但我不知道哪些应用程序连接到它。也许我找到了一个应用程序,但我不确定它是否是唯一一个使用它的应用程序。

有没有找到所有不同连接的好方法?

sql-server sql-server-2012 troubleshooting connections

11
推荐指数
2
解决办法
4万
查看次数

使用 # 的 SQL 服务器临时表 - 是否只能通过包含具有相同登录名的多个连接的查询访问?

假设我们有 2 个完全不同的查询,它们引用了一个同名的临时表:

查询一 .... 操作:#tempTableName

查询二 .... 操作:#tempTableName

我对此进行了研究,发现“#temp 是一个本地临时表,因此对其他连接不可见”,但是我不确定连接在 SQL 查询上下文中的真正含义。SQL 是否认为每个运行的单独查询都有一个单独的“连接”,或者连接是否以某种方式共享?

具体来说,我的问题是“如果我的场景中的两个查询被同一个登录名访问会发生什么”,例如多个 .NET 应用程序使用相同的 .NET 连接字符串并同时访问数据库。如果我的场景中的两个查询同时运行,他们是否会潜在地访问同一个临时表?锁呢?我是否需要采取任何措施来防止在桌子上操作期间发生不必要的访问?

我看过这个答案,/sf/ask/32686321/,但是我真的需要像“假装我 6 岁”这样的解释,以便我我非常清楚在我的假设场景中发生了什么,就 SQL 查询究竟如何利用连接和确定独占访问等而言。任何可以让我完全掌握这一点的图表或资源指针都会很棒!

sql-server concurrency ado.net connections temporary-tables

9
推荐指数
1
解决办法
1万
查看次数

什么原因可能导致 AWS RDS 连接激增

这是我第一次在 AWS 上使用 RDS,我使用 t2.medium 实例运行 MySQL Aurora 和默认配置。CPU 使用率和 DB 连接是很正常的,直到“某事”发生,这导致 DB 连接一直达到最大值(t2.medium 为 80 个连接)。

在此处输入图片说明

我只有一个 Web 应用程序,在 EC2 实例上运行。当数据库连接数达到最大值时,EC2 实例的 CPU 使用率绝对正常(25-30%),但所有尝试连接到数据库实例的结果都是“连接过多”。

在此处输入图片说明

我当时还检查了数据库实例的 CPU 利用率 - 它没有显示高负载信号。在罢工期间,CPU 利用率下降到 20% 并始终保持该比率。

在此处输入图片说明

我不明白的事情:数据库连接已达到最大值,但为什么数据库 CPU 利用率下降了?由于这些连接中的查询计算,它不应该也处于最大值吗?

请帮助我理解,非常感谢。

(当第二次罢工发生时,我不得不将 RDS 实例的大小调整为 r4.large;我现在仍在运行它,直到我发现问题......)

mysql max-connections high-availability connections

9
推荐指数
2
解决办法
1万
查看次数