Kir*_*ten 2 sql-server sql-server-express sql-server-2017
当我重新索引特定表时
\n\nDBCC DBREINDEX(@TableName, \'\',90) \nRun Code Online (Sandbox Code Playgroud)\n\n我收到一个错误
\n\n\n\n\n级别 17,状态 2,过程 aareindex,第 21 行 [批处理起始行 0]\n 无法为对象 \xe2\x80\x98dbo 分配空间。SORT 临时运行存储:\n 数据库 \xe2 中的 422738479742976\xe2\x80\x99 \x80\x98mydatabase\xe2\x80\x99 因为 \xe2\x80\x98PRIMARY\xe2\x80\x99\n 文件组已满。通过删除不需要的文件、删除文件组中的对象、向文件组添加其他文件或为文件组中的现有文件设置自动增长来创建磁盘空间。
\n
所以我想尝试增加 TempDb 的大小
\n\n我可以通过查看数据库属性使用 SSMS 查看大小,但我不知道如何设置它。
\n\n[更新]
\n\nselect type_desc, name, size, max_size, growth from tempdb.sys.database_files\nRun Code Online (Sandbox Code Playgroud)\n\n回报
\n\n\n\n文件大小已为 10236 Mb,Express 限制为 10 Gig\n但是磁盘使用情况报告显示 26% 的磁盘空间未分配,40% 为数据,32% 为索引。
\n小智 5
您不需要增加临时数据库的大小。
\n\n\n\n\n在数据库 \xe2\x80\x98mydatabase\xe2\x80\x99 中,因为 \xe2\x80\x98PRIMARY\xe2\x80\x99 文件组已满。
\n
告诉您它无法写入您的主文件组已满(c:\\数据库路径\\mydatabase.mdf)。要么没有存储 MDF 的磁盘空间,要么更可能的原因是您的主文件组没有更多可用空间可写入。
\n\n您可以通过几种不同的方式解决这个问题
\n\n在图形用户界面中
\n\n在SSMS中:
\n\nSQL 更改语句
\n\nuse master\ngo\n-- Use one of the statements below\n\n-- this statement will allow for unlimited file growth \nalter database [mydatabase] modify file ( name =\'mydatabase\', maxsize = UNLIMITED)\n\n-- this statement will allow the database size to 100MB\'s.\nalter database [mydatabase] modify file ( name =\'mydatabase\', maxsize = 102400KB)\nRun Code Online (Sandbox Code Playgroud)\n