当前位置:首页 » 编程语言 » 船用高频电话sQL过大
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

船用高频电话sQL过大

发布时间: 2023-05-15 22:23:42

sql数据库文件过大,程序运行非常慢,怎么办

如果是因为数据库太大造成程序运行很慢,那么根据一定规则(比如时间等)把数据库划分成几个小的数据库表,这样可以显着增加数据速度

② sql数据库日志文件过大怎么办

经过几个小时的测试,最有用的方法如下:

  1. 停止数据库MSSQL实
  2. 复制数据库目标库文件('***.mdf')重新命名
  3. 执行如下SQL语句,注意修改正确的库名
  4. EXECsp_attach_single_file_db@dbname='库名',
    @physname='D:_50.MSSQLSERVERMSSQLDATA库名.mdf'
  5. 数据库属性/文件/限制文件增长
  6. 数据库属性/选项/设置数据库收缩为[自动收缩]

③ SQL SERVER 日志过大怎么办

/*--特别注意
请按步骤进行,未进行前面的步骤,请不要做后面的步骤
否则可能损坏你的数据库.
一般不建议做第4,6两步
第4步不安全,有可能损坏数据库或丢失数据
第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.
--*/
--下面的所有库名都指你要处理的数据库的库名
1.清空日志(SQL2000时可用)
DUMP TRANSACTION 库名 WITH NO_LOG
2.截断事务日志:
BACKUP LOG 库名 WITH NO_LOG
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
也可以用SQL语句来完成
--收缩数据库
DBCC SHRINKDATABASE(库名)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
DBCC SHRINKFILE(1)
4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除LOG文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
a.分离
EXEC sp_detach_db @dbname = '库名'
b.删除日志文件
c.再附加
EXEC sp_attach_single_file_db @dbname = '库名',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\库名.mdf'
5.为了以后能自动收缩,做如下设置:
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--SQL语句设置方式:
EXEC sp_dboption '库名', 'autoshrink', 'TRUE'
6.如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--SQL语句的设置方式:
alter database 库名 modify file(name=逻辑文件名,maxsize=20)

④ SQL2000数据库过大,备份不了,又不能脱离,怎么备份

可以使用差异备份,如果先前没有完全备份,那就这样,选择分离数据库,然后在异地(估计要使用移动硬盘类似的东西)把文件mdf和ldf复制过去。

⑤ sql数据库文件过大,程序运行非常慢,怎么办

收缩数据库

一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大
1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存
2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定
3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据

⑥ sql数据库服务器,内存占用过大怎么办

SqlServer系统内存管理在没有配置内存最大值,很多时候我们会发现运行SqlServer的系统内存往往居高不下。这是由于他对于内存使用的策略是有多少闲置的内存就占用多少,直到内存使用虑达到系统峰值时(预留内存根据系统默认预留使用为准,至少4M),才会清除一些缓存释放少量的内存为新的缓存腾出空间。

这些内存一般都是SqlServer运行时候用作缓存的,例如你运行一个select语句,执行个存储过程,调用函数;

1.数据缓存:执行个查询语句,SqlServer会将相关的数据页(SqlServer操作的数据都是以页为单位的)加载到内存中来,下一次如果再次请求此页的数据的时候,就无需读取磁盘了,大大提高了速度。

2.执行命令缓存:在执行存储过程,自定函数时,SqlServer需要先二进制编译再运行,编译后的结果也会缓存起来,再次调用时就无需再次编译。

在我们执行完相应的查询语句,或存储过程,如果我们不在需要这些缓存,我可以将它清除,DBCC管理命令缓存清除如下:

--清除存储过程缓存
DBCCFREEPROCCACHE
--注:方便记住关键字FREEPROCCACHE可以拆解成FREE(割舍,清除)PROC(存储过程关键字简写),CACHE(缓存)
--清除会话缓存
DBCCFREESESSIONCACHE
--注:FREE(割舍,清除)SESSION(会话)CACHE(缓存)
--清除系统缓存
DBCCFREESYSTEMCACHE('All')
--注:FREESYSTEMCACHE
--清除所有缓存
DBCCDROPCLEANBUFFERS
--注:DROPCLEANBUFFERS

⑦ sql数据库服务器,内存占用过大怎么办

1、1.选择逗开始
>
所有程序
>
microsoft
sql
server
2008
r2
>
sql
server
management
studio地。系统显示逗连接到服务器地界面。
2、2.输入各项数据,单轮派渣击连接
3、3.系羡姿统显示逗对象资源管理器地界面
4、4.上图单击右键,在弹出的快捷菜单中选择逗属性地。
5、5.在左侧导航栏中选择逗内存地,将右侧逗最大服务器腊悄内存地的值设置为物理内存的60%,本例以8g内存为例
6、6.最后单击确定,设置完成

⑧ MSSQL数据库占用内存过大造成服务器死机问题的解决方法

使用MSSQL的站长朋友都会被MSSQL数据库吃内存的能力佩服得五体投地 一个小小的网站 运行若干天之后 MSSQL就会把服务器上所有的内存都吃光 此时你不得不重新启动一下服务器或MSSQL来释放内存 有人认为是MSSQL有内存泄露问题 其实不然 微软给我们了明确说明:

在您启动 SQL Server 之后 SQL Server 内存使用量将会持续稳定上升 即使当服务器上活动很少时也不会下降 另外 任务管理器和性能监视器将显示计算机上可用的物理内存稳定下降 直到可用内存降到 至 MB 为止

仅仅出现这种状态不表示内存泄漏 此行为是正常的 并且是 SQL Server 缓冲池的预期行为

默认情况下 SQL Server 根据操作系统报告的物理内存加载动态增大和收缩其缓冲池(缓存)的大小 只要有足够的内存可用于防止内存页面交换(在 至 MB 之间) SQL Server 缓冲池就会继续增大 像在与 SQL Server 分配内存位于相同计算机上的其他进程一样 SQL Server 缓冲区管理器将在需要的时候释放内存 SQL Server 每秒可以释放和获取几兆字节的内存 从而使它可以快速适应内存分配变化

更多信息

您可以通过服务器内存最小值和服务器内存最大值配置选项设置 SQL Server 数据库引擎使用的内存(缓冲池)量的上下限 在设置服务器内存最小值和服务器内存最大值选项之前 请查阅以下 Microsoft 知识库文章中标题为"内存"一节中的参考信息

HOW TO Determine Proper SQL Server Configuration Settings(确定正确的 SQL Server 配置设置)

请注意 服务器内存最大值选项只限制 SQL Server 缓冲池的大小 服务器内存最大值选项不限制剩余的未保留内存区域 SQL Server 准备将该区域分配给其他组件 例如扩展存储过程 对象 以及非共享 DLL EXE 和 MAPI 组件 由于前面的分配 SQL Server 专用字节超过服务器内存最大值配置是很正常的 有关此未保留内存区域中分配的其他信息 请单击下面的文章编号 以查看 Microsoft 知识库中相应的文章

PRB 在使用大量数据库时可能没有足够的虚拟内存

参考

SQL Server 联机图书;主题 "服务器内存最小值和最大值的影响";"内存体系结构";"服务器内存选项";"SQL Server 内存池"

下面我们就来实战如何限制MSSQL内存使用:

第一步:打开企业管理双击进入要修改的MSSQL

第二步:在左侧MSSQL上点击右键 选择属性 弹出SQL Server属性(配置)对话框

第三步:点击内存选项卡

在这里 你会看到MSSQL默认设置为使用最大内存 也就是你所有的内存 根据你的需要 设置它的最大值吧

lishixin/Article/program/MySQL/201311/29533