现在的位置: 首页 > 综合 > 正文

关于asp.net网站发布后,使用登录控件和注册控件时出现“数据库只读,无法进行数据更新”的解决方法

2013年04月12日 ⁄ 综合 ⁄ 共 636字 ⁄ 字号 评论关闭

问题的出现:
我所使用的编程环境为:windows2003+vs2005+sqlserver2005express。sqlserver名为sqlexpress
在编程环境中可以使用VS2005自带的成员提供数据库ASPNETDB.MDF进行登录、注册等,但将它发布到另一台服务器(环境为:windows2003+dotnet2.0+sqlserver2005express sqlserver名为sqlexpress)后,只要进行登录、注册时,便会出现“用户名不存在,无法登录”和“数据库ASPNETDB.MDF只读,无法进行数据更新”。我查看App_Data文件夹下的ASPNETDB.MDF时,发现它并不具有只读属性。
上网查了许多资料,都没有找到解决方法,后来通过摸索,终于解决了。
其实产生这种现象的原因,是由于可以登录sqlserver(sqlexpress)的用户没有对App_Data文件夹的读写权限。明白了这个原因后,我们首先需弄清可以登录sqlserver(sqlexpress)的用户是什么,这个我们可以通过sql server Configuration Manager获知。如下图:

可以看出,服务器上的sqlexpress服务的用户为networkservice。然后,对App_Data文件夹添加networkservice用户,并将networkservice用户的权限设置为读取、写入。
如果设置权限后问题依旧的话,就需要将电脑重启,一般重启电脑后,就正常了。

抱歉!评论已关闭.