Found a great article on this:
http://www.ifinity.com.au/Blog/EntryI...
- which basically says that :
"With DotNetNuke 5.2 a new change was introduced, where a specific GRANT EXECUTE statement was run for all the objects on the database..."
e.g."grant EXECUTE on [dnn_DeleteLanguage] to [dnnAdmin]"
"many DotNetNuke installations use a ‘databaseOwner’ – this is specified when you first install the site, and is kept in the web.config entries for the SqlDataProvider object... "
" if you have ‘dbo’ as the database owner, you’ve probably got no problems. But if you have a value like databaseOwner=”hosting_user” then you probably have a problem. This is because each of the above scripts does not specify the ‘owner’ or ‘schema’ of the database object..."
However, I have followed the suggestions on the site above, but still get the errors.
I'm not sure how/where is this code inserted?
grant EXECUTE on hosting_user.[dnn_DeleteLanguage] to [dnnAdmin]
I have ran this script:
EXEC sp_change_users_login @action ='Report'
but I no longer have any orphaned users,
although I did initially have orphaned users when I first upgraded from sql2000 to sql2005 and noticed problems upon my next DNN upgrade.
I thought that I had fully rectified this by using the change_users_login script, but I'm still having the same errors above when upgrading my DNN.
When I run this code:
select * from sys.database_principals where name = ‘hosting_user’
- it doesn't return anything (but I'nm sure I have run the ALTER USER script in the past and so may have already rectified this problem).
I have run this script:
select * from Users
-And get the ‘invalid object name’ error.
When I upgrade using databaseowner='hostin_user' (or my own version of this name) I get the errors mentioned above (e.g. Cannot find the object...).
If I change the database owner in web.config to this: databaseowner='dbo' - our site goes down
Error msg saying 'site is currently unavailable...'.
All the stored procedures do exist (as I have re-created all the missing ones).