10

I'm attempting to publish a feature service to ArcGIS server. I'm running SQL Server Express and ArcSDE. When I try to publish the service I get the error "00090: Feature service requires a registered database".

enter image description here

When I validate the database registration it appears to succeed, but I still can't publish the service. The features I am publishing are located inside of the geodatabase that I am registering. This geodatabase is located on the same server that ArcGIS Server resides, but I am attempting to publish from another machine. Am I missing some crucial step?

Here is a bigger version of the screenshot.

4
  • Rename the data source and then try again .I hope that you have (arcgis account have) full permission to access the data base. Check this also resources.arcgis.com/en/help/main/10.1/index.html#//…
    – Sunil
    Apr 5, 2013 at 19:18
  • Did you fix the bug? I have the bug too.
    – Leo
    Jan 9, 2017 at 15:42
  • Anyway, I fixed the bug.
    – Leo
    Jan 9, 2017 at 15:57
  • This does not really answer the question. If you have a different question, you can ask it by clicking Ask Question. You can also add a bounty to draw more attention to this question once you have enough reputation. - From Review Jan 9, 2017 at 15:59

2 Answers 2

4

I'd try some of the following things (in relevance order):

  1. Restart ArcMap and try publishing again - the data store might not have been updated for the ArcMap session.
  2. When adding the data from a SQL Server Express (under Database Servers), make sure your data path is identical to what you've registered the data store for. I.e., the ".\SQLExpress" is not the same as "servername\SQLExpress" when registering a data store - I remember having this problem myself. I never use the ".\" in the connections > use the machine name both when registering the data store and when establishing the connection to a SQL Server Express instance in the Database Servers section.
  3. Make sure as Sunil mentioned that the ArcGIS Server Account has permissions at least to read the data. Double-click Database Servers in the Catalog tree. Right-click the database server containing the geodatabase and click Permissions. Click Add User and add the ArcGIS Server account. Click OK. Double-click the same database server. Right-click the geodatabase, click Administration, then click Permissions. Click the ArcGIS Server account to select it and choose the level of permissions you want it to have.
  4. Restart the ArcGIS Server Windows service.
  5. Restart the machine.
3
  • I cannot get the permission to work. I have added the ArcGIS Server account, but when I try to give it Read or Read/Write permissions in the geodatabase I get the error: "Cannot Apply. Cannot alter the role 'ESRIWriteData', because it does not exist or you do not have permission.
    – Radar
    Apr 5, 2013 at 20:08
  • This error pertains to the SQL Server and it means there are problems with giving certain privileges to the ArcGIS Server Account login in the SQL Server. I'd recommend start troubleshooting by using SQL Server Management Studio to see what if you can add the login to the instance and the database you use manually, but I don't have anything to suggest directly. Apr 5, 2013 at 21:32
  • You've got feature editing enabled, but it sounds like editing is not set up on your SQL Server yet.
    – Mintx
    Apr 5, 2013 at 22:35
2

It has to be an enterprise geodatabase (SQL Server or SQL Server Express 2012 with Enterprise Server). If you are using a workgroup geodatabase (Server for Workgroups or SQL Server 2010), then you will be able to register the data source, but not use it for a feature class.

Also realize that Esri does not recommend using SQL Server Express in the enterprise role; others on the esri forums have had this problem, and worked around it by using the database as a managed geodatabase.

6
  • Not true. It is possible to create feature services with editing functionality on SQL Server Express instances without using the SQL Server. Done myself hundred times :) Apr 5, 2013 at 21:14
  • But not using a registered geodatabase. Registered geodatabase must be an enterprise geodatabase to work with a feature service. Apr 5, 2013 at 21:15
  • I used the "Create Enterprise Geodatabase" tool to create an Enterprise Geodatabase inside of SQL Server Express.
    – Radar
    Apr 5, 2013 at 21:20
  • I found the scenario you are talking about: forums.arcgis.com/threads/… You can do it, it is not recommended, and apparently the work around is to use sql server express as a managed geodatabase. Apr 5, 2013 at 21:26
  • As managed geodatabase? Very odd. Registering as managed means that the data will be copied to the database if your current data is stored in, for instance, a file geodatabase (which is not supported with feature service) and I had never need to do this on my SQL Express instance. I have several development and test machines with the SQL Server Express running and some feature services published properly. No running the Create Enterprise Geodatabase GP tool is required for the SQL Server Express. Just register the Express as the data store and give AGS account read/write permissions. Apr 5, 2013 at 21:38

Not the answer you're looking for? Browse other questions tagged or ask your own question.