今天有一家客户说数据库产生了错误,让我看一下。
Error: 1601, Severity: 17, State: 3 There are not enough 'user connections' available to start a new process. Retry when there are fewer active users, or ask your System Administrator to reconfigure SQL Server with more user connections.
经分析,认为是连接数太小导致,需要修改数据库的最大连接数。
1、查看最大连接数
sp_configure 'number of user connections'
结果如下:
Parameter Name Default Memory Used Config Value Run Value Unit Type
-------------- ------- ----------- ------------ --------- ---- ----
number of user connections 25 2372 25 25 number dynamic
Sybase的数据库默认最大连接数为25,当连接数不够用的情况下,需要修改数据库配置。
2、修改为200
sp_configure 'number of user connections',200
报如下错误:
Server Message: Number 7415, Severity 10
Procedure 'sp_configure', Line 606:
The transaction log in database master is almost full. Your transaction is being suspended until space is made available in the log.
看来是由于日志空间将满导致,需清除日志。
清除Log有两种方法:
1>自动清除法
开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。
2>手动清除法
执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:
dump transaction with truncate_only
dump transaction with no_log
通常删除事务日志中不活跃的部分可使用“dump transaction with trancate_only”命令,这条命令写进事务日志时,还要做必要的并发性检查。SYBASE提供“dump transaction with no_log”来处理某些非常紧迫的情况,使用这条命令有很大的危险性,SQL Server会弹出一条警告信息。为了尽量确保数据库的一致性,你应将它作为“最后一招”。
以上两种方法只清除日志,而不做日志备份,若想备份日志,应执行“dump transaction database_name to dumpdevice”命令。
3、清除日志,选用第一种方法
dump transaction melinets with truncate_only
清除后执行sp_configure 'number of user connections',200
发现依然存在该错误
Server Message: Number 7415, Severity 10
Procedure 'sp_configure', Line 606:
The transaction log in database master is almost full. Your transaction is being suspended until space is made available in the log.
4、看来还需要清除一下master的日志文件
dump transaction master with truncate_only
再次执行sp_configure 'number of user connections',200
结果报如下错误,提示'max memory'值不够大
Server Message: Number 5861, Severity 16
Procedure 'sp_configure', Line 606:
The current 'max memory' value '23552', is not sufficient to change the parameter 'number of user connections' to '200'. 'max memory' should be greater than 'total logical memory' '26606' required for the configuration.
(1 row affected)
(return status = 1)
5、根据失败提示信息,修改'max memory'为需要的值
sp_configure 'max memory',26606
执行结果
Parameter Name Default Memory Used Config Value Run Value Unit Type
-------------- ------- ----------- ------------ --------- ---- ----
max memory 23552 53212 26606 26606 memory pages(2k) dynamic
Configuration option changed. The SQL Server need not be rebooted since the option is dynamic.
Changing the value of 'max memory' to '26606' increases the amount of memory ASE uses by 10 K.
(1 row affected)
(return status = 0)
6、重新修改连接数,终于成功
sp_configure 'number of user connections',200
结果如下:
Parameter Name Default Memory Used Config Value Run Value Unit Type
------------- ------- ----------- ------------ --------- ---- ----
number of user connections 25 17347 200 200 number dynamic
Configuration option changed. The SQL Server need not be rebooted since the option is dynamic.
Changing the value of 'number of user connections' to '200' increases the amount of memory ASE uses by 19534 K.
(1 row affected)
(return status = 0)
7、重启数据库服务。
刚发表这篇日志,那个客户就来找我,说中午人少的时候把数据库服务期重启了,然后所有的系统都不能用了。晕哦,有点严重,马上远程连接看了下,ping也ping不通,看了一下服务也没有启,请教了一下老员工,说可能是由于内存比较小,承受不了200个连接,要改小一点。于是在sybase根目录下找到sybase.cfg,将number of user connections的值由200改为100,然后就可以启动数据库服务了。所以,改连接数的时候还要充分考虑内存的问题。
分享到:
相关推荐
在 Sybase 数据库管理系统中,最大连接数是一个关键的配置参数,它决定了同一时间可以有多少个用户或应用程序连接到数据库服务器。在 Sybase ASE(Adaptive Server Enterprise)12.5.1 版本中,调整这个参数对于优化...
数据库连接数指的是同一时间能够与数据库服务器建立连接的客户端数量。这个参数对于处理高并发访问的系统至关重要,因为它决定了数据库能同时服务的用户或应用程序的数量。 标题提到的“sybase 12.5.1最大连接数...
Sybase 数据库安装与常见命令的使用 Sybase 数据库安装是 Sybase 数据库管理系统的基础,正确的安装是使用 Sybase 数据库的前提。本节将详细讲解 Sybase 数据库的安装步骤和常见命令的使用。 一、Sybase 数据库...
但在本场景中,"SSM工具"可能指的是一个非官方或第三方的工具,专门针对SYBASE数据库在LINUX环境下的可视化管理。这款工具提供了与SQL Server Management Studio类似的界面和功能,使得用户无需通过命令行操作,即可...
这包括但不限于内存配置(如使用sp_configure进行调整)、最大在线引擎数的设定、数据和过程缓存的大小优化,以及网络参数的调整,以确保数据传输的效率和稳定性。 总结来说,Sybase 12.5数据库调优是一个涉及多...
- `Number of User Connections`定义了数据库允许的最大用户连接数。 - `Number of Remote Connections`是允许的远程访问用户连接数。 - `Number of Remote Logins`是远程登录用户连接数。 5. **网络通信**: -...
- **参数修改**:直接编辑SYBASE.cfg文件调整系统参数,如内存分配、并发连接数等。 - **参数生效**:修改后需重启数据库服务以应用变更。 综上所述,SYBASE数据库系统是一个功能强大的数据库解决方案,涵盖了从...
**2.35 设置可用的最大用户连接数** - 参数:通过`max connections`选项配置。 **2.36 备份数据库** - 方法:使用`backup database`语句。 **2.37 进行数据库的增量备份** - 方法:指定`incremental`参数。 **...
2. **maxActive**:这是允许同时打开的最大活动连接数。超过这个数量,新的请求将被阻塞,直到有连接被释放。 3. **maxIdle**:这是连接池允许的最大空闲连接数。当连接返回到池中且总数超过这个值时,超出的连接将...
### SYBASE数据库管理知识点 #### 数据库基础 **1.1 基本概念** - **1.1.1 数据** 所谓数据(Data),是指用来描述事物的符号记录,是客观事物的属性、数量、位置及其相互关系等进行抽象表示的结果。在计算机...
这些参数包括但不限于连接数限制、缓存大小等。合理设置这些参数能够有效提高系统的并发处理能力和服务质量。 **2.4 优化数据库系统属性** 数据库系统属性是指那些影响数据库全局行为的设置。例如,可以调整数据页...
这些基本命令和操作是Sybase数据库管理中的核心部分,掌握它们有助于进行用户管理、数据库创建和维护。在实际工作中,根据不同的需求,可能还需要学习更多高级的命令和配置选项,以满足复杂的企业级数据库管理任务。
为了使Oracle服务器能够识别并连接至Sybase数据库,需要在`tnsnames.ora`文件中定义相应的连接描述符。这一描述符应包含目标主机名、端口号以及前文选定的`gateway_sid`,确保Oracle能够通过Transparent Gateway访问...
Sybase数据库允许配置最大连接数,以控制同时访问数据库的用户数量。使用sp_configure命令可以修改number of user connections的值,如果操作失败,可能需要调整maxmemory的大小。修改后需要重新启动数据库服务。 ...
根据系统负载和性能需求,可能需要调整 Sybase 服务器的配置参数,如缓冲区大小、并发连接数等。 **第二章 Sybase 的管理** 这一章将涵盖启动、停止数据库服务器,创建和管理数据库,用户权限管理,性能监控,...
2. 配置连接池属性:如最大连接数、最小连接数、超时时间、验证查询等,这些通常在应用的配置文件中完成。 3. 创建数据源:利用连接池提供的API创建数据源对象,并在代码中使用它来获取和释放连接。 最后,当不再...
在实施SYBASE数据库解决方案时,如果遇到如数据导入导出、SQL查询执行失败、数据库连接问题、性能瓶颈等常见问题,都可以通过手册中的错误信息进行快速定位。例如,当用户收到“-1555”错误时,这通常意味着事务超时...
2.39 如何为当前的Sybase数据库服务器设置可用的最大用户连接数? 36 2.40 如何备份数据库? 36 2.41 如何进行数据库的增量备份? 37 2.42 如何恢复数据库? 37 2.43 如何截断数据库的事务日志? 38 2.44 如何...