Unable to find default serveradmin account // deleted serveradmin from database

2020-11-17 05:41:22.541818|INFO |ServerLibPriv | |TeamSpeak 3 Server 3.13.1 (2020-11-11 09:54:16)
2020-11-17 05:41:22.542793|INFO |ServerLibPriv | |SystemInformation: Windows Server 2016 (17763) x64 (AMD or Intel) Binary: 64bit
2020-11-17 05:41:22.542793|INFO |ServerLibPriv | |Using hardware aes
2020-11-17 05:41:22.543770|INFO |DatabaseQuery | |dbPlugin name: MariaDB plugin, version 3, (c)TeamSpeak Systems GmbH
2020-11-17 05:41:22.543770|INFO |DatabaseQuery | |dbPlugin version: 2
2020-11-17 05:41:22.608188|INFO |SQL | |database updated successfully to revision: 34
2020-11-17 05:41:22.615016|CRITICAL|ServerLibPriv | |unable to find default serveradmin account

Version 3.12.1 works fine :frowning: , i need help
i cant not update sry for my bad english

Without the database we can only repeat what the error says.

The serveradmin account with client_unique_id serveradmin does not exist on server_id 0.
In that case the database looks modified or the account was deleted (both happened in the past already).

2 Likes

I did have the same issue with the .13.x update on an otherwise unmodified database.
In the past you would not get any support from TeamSpeak regarding fixing database issues.
And I do remember posts being deleted that suggested otherwise. So I will only mention that you should check that nickname, login name and other naming fields are “serveradmin” for the serveradmin account.
Otherwise 13.x will not start. I did submit a ticket about this issue. This had never happened before. ¯\_(ツ)_/¯. Would at least suggest the code looking for the client does not rely completely on the ids anymore or there were additional checks added.

Could it bet that the database is really really old? I may have an idea why some users have this while others do not have the problem.

Yes this check is new. We are helping if it’s our fault.

1 Like

I do have an older sql dump from the server database. I just looked into the virtualserver_created value and it is: 19.12.2009. So yes. A bit older :slight_smile:.
But as I stated earlier I already fixed the issue after creating a backup. Question is if @alex91 issue is related/same.

I guess his db is also older than 2016.

2 Likes

wow thanks for many answer , and thanks for help.
Im checkingup but icant with older version dont changed serveradminquarry nothing im login bot i cant not changed :confused:

Nothing works , i have changed again old version works fine machine_id and server_id is on 1 (ts3server.ini) and serveradmin under clients tabel is 1 by server_id :confused:

In your database this red marked part is the same?
grafik

1 Like

We plan to release a new version where this issue is still logged but server won’t stop.

An update was released

3 Likes

no my server have machine_id 1 and all row called 1.

I have changed and he make a new superadmin quarry , server started and works fine .
Im changed superadmin password manuell the superadmin password is blank but this is not so dangerous. And i have a API WoW :smiley:
Chris big thanks my Server works fine under (changed id) workaround .
You can cloesed this Thread.
Thanks Teamspeak Community ^^

I reinstalled the client and lost admin rights on my server. In an attempt to give myself a privilege token, I tried to log in via Telnet as “serveradmin” to my server (ssh), but got a password error. Following some online instructions, I deleted this user’s record(“serveradmin”) from the client table in db… and the server no longer generates it. When I start the server, I see this:
2025-10-20 09:25:33.866597|WARNING |ServerLibPriv | |Could not find an account which has the ‘client unique id’ of ‘serveradmin’, which is how the serveradmin account is identified. This can lead to unexpected results. (Note: Usually this account has the ‘client id’ ‘1’.)

What can I do to restore “serveradmin” and my client user’s rights?

First, insert the serveradmin back into the database.

INSERT INTO "clients" VALUES(1,0,'serveradmin','serveradmin','serveradmin',NULL,0,0,0,0,0,0,NULL,NULL,NULL);

Then start the server with the serveradmin_password=MY_NEW_PASSWORD_HERE command line argument to set a new query password for the serveradmin account.
https://support.teamspeak.com/hc/en-us/articles/360002712898-How-do-I-change-or-reset-the-password-of-the-serveradmin-Server-Query-account

Then you can use e.g. the clientaddservergroup or privilegekeyadd query commands to get your permissions back.

Also if you use myTeamSpeak you can synchronize your identities to prevent something like this from happening again in the future. :wink:

2 Likes

I executed query to insert a record, but this “serveradmin” does not have rights and cannot perform any operations. The query also contained an error. The “clients” table has 14 fields.

Sorry, my bad. I took the record from a TeamSpeak 6 server which added the homebase_since field not present in TeamSpeak 3 servers. But leaving out the last NULL should work. For the permissions I guess the server group assignment was also removed with the deletion of the client, but I am not sure. Can you check if this query returns an entry?

SELECT * FROM group_server_to_client WHERE group_id=2;

If not you need to add it like so

INSERT INTO "group_server_to_client" VALUES(2,0,1,0);

assuming your virtual server ID is 0.

1 Like
sqlite> SELECT * FROM group_server_to_client WHERE group_id=2;
2|0|1|0
sqlite> SELECT * FROM group_server_to_client;
2|0|1|0
6|1|3|0
6|1|5|0
6|1|7|0

Does the serveradmin user exist now in the clients table?
And have you restarted the server since making any changes?

1 Like

I apparently forgot to mention that yes, I was able to log in as serveradmin using telnet.

error id=0 msg=ok
clientaddservergroup 1 6
error id=1539 msg=parameter\snot\sfound
use sid=1
error id=0 msg=ok
tokenadd tokentype=0 tokenid1=6
error id=1539 msg=parameter\snot\sfound

I think I’m using “clientaddservergroup” and “tokenadd” incorrectly.