MSSQL拒绝创建数据库:一种现象(mssql拒绝创建数据库)

的可能原因

MSSQL拒绝创建数据库是指MSSQL中的用户在执行相应的语句创建数据库时失败或者报错,这种现象有可能源自以下原因。

首先,可能是登录权限的问题,登录MSSQL的用户需要具备拥有创建数据库的权限,如果没有相应的权限,就会被拒绝创建数据库。可以执行如下代码进行验证:

SELECT state_Desc, auth_name 
FROM SYS.SYSOLOGINS A
LEFT JOIN SYS.SYSOBACTS B
ON A.AUTH_ID = B.AUTH_ID
WHERE auth_name like '%create%database';

其次,可能是系统硬盘空间不足导致的,MSSQL创建数据库功能会检测系统硬盘空间是否足够,如果空间不足就无法创建数据库,在每次创建之前可以执行如下代码检测当前磁盘空间:

declare @diskfree as bigint 
exec xp_fixeddrives
select @diskfree=cfree from xp_fixeddrives
where [name] = 'D:'
print 'D: disk spcae:'+ ' ' + cast(round(@diskfree/1024/1024,0) as varchar)+'M'

最后,还可能是系统版本的问题,MSSQL 2008以及以下版本已不支持创建数据库,用户最好确认是否是2008以及以下的版本,可以通过下列代码获取当前MSSQL的版本:

SELECT serverproperty('edition')

以上是MSSQL拒绝创建数据库的一些常见原因,但事实上还可能有其他问题,建议用户根据相关信息在MSSQL官网进行查询并尝试相应的排查方法。


数据运维技术 » MSSQL拒绝创建数据库:一种现象(mssql拒绝创建数据库)