We deploy a DB Ghost exe with out software uptate to migrated the database.
How can i find out what permissions are required on the server? I am trying to deploy to a heavily restricted server and keep running into permission issues, if i could just supply a list then this would save a lot of time.
Otherwise, is there a way to se the exact query that is being rejected by the server?
Well SQL profiler will show you the statements that cause the permission error and often the statement will be included as part of the error in the package report log file.
In a nutshell the package needs at least the permissions that you would need yourself to perform the upgrade if you were doing it manually. So depends on the exact nature of the particular upgrade. Also it needs to query the existing schema not just create new objects. In short; it usually need complete control over the target schema and even the users and logins if these are part of your upgrade.
It also needs permission to create a new database on the server, this is so it can create a temporary source db and then compare and upgrade the target. (you can avoid the need for this permission if your target server admin set up an empty database for the package to use See the /vessel command line option).
You can also minimise the permissions required by setting up the package to run a delta script (produced by a Change Manager compare/sync rehearsal deployment) instead of doing a dynamic upgrade but this, of course is a "fixed" upgrade.