I'm using ArcGIS Pro 3.4.0. I need to re-version a feature dataset, and yesterday when I went to do this, I realized that I did not have the right server role to disconnect users, so I went into SSMS and changed myself to a sysadmin. I was already the database owner. Now, even though the option for DBO is still checked, it's telling me "User is not the data owner." Our address data is all null right now and cannot be edited because the feature dataset versioning is in a mixed state.
Solved! Go to Solution.
Ah, ok. Remove the SYSADMIN and the other permissions that you checked "on" in the DB from the GIS user. That should hopefully get you back to the place you need to be.
You should never have to assign a user SYSADMIN for geodatabase functions, unless DBO schema and not the DB owner.
Regardless if you create a new user and grant them SYSADMIN it will not work as expected.
Hope this helps!
Questions:
A guess is that your UN / schema do not match and the mixed permissions are causing an issue.
Thanks for responding George. Yes, I selected them based on a document left by my predecessor. His document said to use gis as the schema, but after I started getting this error, I changed it to DBO because I was just running out of ideas on what to do. I even just tried setting up another database connection using my predecessor's login, and I still get the error message.
Ok...... so the data is "owned" by the "GIS" user.
Using SYSADMIN will not allow you to take over the data, like an owner.
You will need to login to the EGDB as the GIS user in order to fix this issue.
I would back out all the permissions that you set based on the document provided to you. It is possible that the workflow worked in the past, but not now.
Logging in as the GIS user is actually what I did at first. It worked fine until I added sysadmin privilege. I don't see how it would be a problem, but I also created a new role with all privileges and added that to the gis user. I only did that because I'm new to SSMS and didn't realize you could just right click on the login and change someone to sysadmin. So, initially, I gave the gis user both sysadmin and the new role I created. Then, when I started having this problem, I took off the new role. I'm not sure how that could cause a problem, but that's the only other thing I did.
Ah, ok. Remove the SYSADMIN and the other permissions that you checked "on" in the DB from the GIS user. That should hopefully get you back to the place you need to be.
You should never have to assign a user SYSADMIN for geodatabase functions, unless DBO schema and not the DB owner.
Regardless if you create a new user and grant them SYSADMIN it will not work as expected.
Hope this helps!
Thank you George. Taking off sysadmin did the trick. Ultimately, in order to accomplish both the disconnection of users and the re-versioning of the dataset, I need to use two separate database connections, one as the database owner and the other as the sysadmin. Then I was able to do what I needed.
Glad this corrected the behavior that you saw.
For the disconnect, you can use the SDE user. Be sure that the SDE user has the correct permissions / roles to do this: https://pro.arcgis.com/en/pro-app/latest/help/data/geodatabases/manage-sql-server/privileges-sqlserv...