2012-09-14 315 views
0

我有一个NSIS安装脚本,它在Windows 7上成功安装了SQL Server Express 2008 R2的一个实例,但是当我稍后尝试创建来自安装脚本的数据库出现错误,表示拒绝访问。我的详细步骤如下。使用SQLEXPRWT_x86_ENU.exe安装SQL Server Express 2008 R2后,SQL Server无法创建数据库

我安装SQL Server Express与我NSIS安装使用下列内容:

ExecWait 'SQLEXPRWT_x86_ENU.exe /Q /ACTION=Install /IACCEPTSQLSERVERLICENSETERMS /ROLE=AllFeatures_WithDefaults /SQLSVCACCOUNT="NT AUTHORITY\Network Service" /INSTANCENAME=SQLXXXX /SecurityMode=SQL /SAPWD="xxxxxx" /IndicateProgress' 

然后我NSIS安装程序中我尝试'来创建一个具有以下数据库:

ExecWait 'sqlcmd -S "computerName\SQLXXXX" -i "$OUTDIR\ASPNETDB_Create.SQL" -o "$OUTDIR\ASPNETDB_Create_Log.txt"' 

脚本ASPNETDB_Create.SQL失败在它的第一个命令,其如下:

CREATE DATABASE [aspnetdb] ON PRIMARY 
(NAME = N'aspnetdb', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLXXXX\MSSQL\DATA\aspnetdb.mdf' , SIZE = 411392KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB) 
LOG ON (NAME = N'aspnetdb_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLXXXX\MSSQL\DATA\aspnetdb_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%) 
GO 

我克等下面的错误中列出:

CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLXXXX\MSSQL\DATA\aspnetdb.mdf'. 

看来问题是该文件夹 'C:\ Program Files文件\ Microsoft SQL Server的\ MSSQL10_50.SQLXXXX \ MSSQL \ DATA' 没有为用户设置的任何权限“ NT AUTHORITY \ Network Service“。

如果不正确的访问权限确实是我的问题,我该如何在数据库所在的DATA目录上设置正确的权限?

回答

相关问题