Problem
Error in Central Admin when accessing the Managed Metadata service application:
The Managed Metadata Service or Connection is currently not available. The Application Pool or Managed Metadata Web Service may not have been started. Please Contact your Administrator.
Error in ULS log:
Failed to get term store for proxy ‘Managed Metadata Service’. Exception: System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
Error in Event viewer:
The Managed Metadata Service ‘Managed Metadata Service’ is inaccessible.
I did investigate many suggested solutions out there, and the most similar description of the scenario I found here:
Previously I had tried to re-create the service application with the same database, but it failed in the same way. So this pointed me to that the error was within the database, not permissions in Central Admin, AppPool trouble, services etc.
As someone mentioned in the discussion above, you might have to create a new database and restore the data. In my case this was on a development environment, so backup/restore you said? Luckily i managed to make a way through this problem without scratching the database for good.
Solution
These steps solved the issue for me:
- Go to “Central Administration” and select “Manage service applications”.
- Select your Managed Metadata service application, in my case with almost that name and the button “Properties”:
- Locate the “Database name” and change this one to for example “SP2013_MetaData_NEW”. Remember to take a note of the old database name for the next steps:
- Select “OK” and give it some time. SharePoint now creates a new database for you with the name selected above. When it has completed, try to open the service application (Manage) and it now should open without problems, but as expected with an empty term store.
- Go back to the list over service applications and repeat step 2. Now enter the old database name instead, in my case “SP2013_MetaData” and select “OK”.
- Wait some more an access the service application again (Manage). For me it looked like nothing had changed and I now only saw the new database, but I was missing permissions.
- Locate the “Term store administrators” and at least add your admin user here:
- Select “Save” and now with the correct permissions you should have access to the existing Term Store and the service application would be back to normal.
Note: before performing these steps I had re-created the service application with the existing database. It can be possible that this was necessary to succeed.
Hi, this worked fine with our environment, but do you happen to know what is causing this because this seems to happen for no apparent reason, and how to prevent this from happening?
Dette er en rar, men helt flott løsning 🙂 Testet bare endre db/endre tilbake – Ok. Bra jobba Are 🙂
That is so bizarre. Your solution worked like a champ (after I monkeyed with every permission possible following all the Microsoft official answers). Thanks!!
Worked like a champ after banging my head against official instructions full of Microsoft permission solutions. bizarre, but thank you!
Yep fixed it great post
Thank you. You are a life saver! Would have never thought about doing something like this to fix the problem. Isn’t SharePoint marvelous? Always something new to throw at us. On-premise can’t go away soon enough. Yes, let us hope that it is also our own fault for not having updated to latest CU – but who knows…
THANK YOU! Nothing else worked for me after trying multiple solutions multiple times. So glad you shared!
Hi , I Tried this , however the issue was not fixed , This issue has started after a recent upgrade to SharePoint 2013. I created a New Managed meta data service application and set the database name as the one I already had in the old MMS Application. Now I do not have any term sets in the term store. I am lost. 😦
Are, you are the man. You saved my hide. Thanks big time buddy
Thanks for your instruction. I have used it twice, and it twice help me. Good tips!
That saved me hours THANKS so much. In my case it was the perfect solution, did not recreate the Meta Data Service, only renamed the database and renamed back to the original Name, after that just an IISRESET was necessary, and everything ok.
i just wonder why MS does not know about this…….
Thanks Are. It works for me.
Yesterday my system guys did some work for SQL server because the SQL server space is 0
and they said only deleting history.
Actually I did create new DB for managed metadata and then tried to reuse the original DB but it didn’t work. The key point is setting Term Store Administrator again.
Thanks again.
Didn’t work out me me. I was using an existing applicaiton pool acount that I used for User Profile service application. I created a new application pool account and it worked out.
You’re awesome buddy! Big thanks! 😀
Thank You so much, this fixed it for me.
Thank you I tried all different steps mentioned in all different articles. Your post helped me to solve the issue. Best Regards,
Great idea.
Great Idea. Thanks.