我将Umbraco CMS的所有文件上传到我的http://blog.domain.com,并修改了web.config文件。当我指向blog.domain.com时,它会在主题中写入错误。子域的托管类型是物理托管,而不是子文件夹
上的子域所以,我在这个子域中有第二个web.config文件。第一个是在主域。我觉得这不会有所不同。 这是屏幕截图:http://i.stack.imgur.com/PxSqq.jpg
我检查了我尝试登录数据库的数据库用户,并且它具有数据库的db_owner权限。
此外,我尝试使用谷歌搜索类似的问题,看看有类似错误的人是否解决了这个问题。这是一些页面,但我找不到解决方案。 请帮忙!这已经很久了! : - (
答案 0 :(得分:8)
创建Umbraco数据库时,会创建一个新模式,并在此模式下创建所有表(例如。而不是dbo。)。
在复制Umbraco网站/ db时,我假设您更改了凭据,这意味着Umbraco数据访问层可能正在尝试查找表格。
我发现将模式更改为dbo可以解决此问题,并且可以使用以下SQL脚本实现(只要您的网站的Umbraco表包含在数据库中):
exec sp_MSforeachtable 'ALTER SCHEMA dbo TRANSFER ?'
有关详细信息,我最近撰写了一篇关于复制Umbraco网站的文章,该网站位于以下网址:
http://www.carbonsoft.co.uk/articles/2012/06/copying-an-umbraco-instance.aspx
虽然这个问题是前一段时间被问到的,但我希望这可以帮助其他有类似问题的人,
答案 1 :(得分:3)
如果连接字符串中没有数据库,也会出现此错误。
答案 2 :(得分:0)
Umbraco的数据层(不幸的是)区分大小写 - 这意味着Umbraco无法找到umbracoDomains表。检查表是否正确命名和/或装入 - 如果您的数据库不区分大小写,请确保所有表都是小写的,因为这应该有效。
答案 3 :(得分:-1)
carbonrb是正确的,当umbraco安装创建db时,它使用db user的默认凭据。您可以将模式更改为dbo,例如carbonrb建议或创建具有与umbraco 安装的默认模式相同的用户。用户不能处于sysadmin角色,因为它会将默认架构覆盖回dbo。