cancel
Showing results for 
Search instead for 
Did you mean: 

Wrong SYSDBA Error -24908

Former Member
0 Kudos

Greetings,

We are having a problem with SAPDB that I am not able to solve. We restored a full backup from another server, and after installing it, I managed to bring it online (after some trouble, we ran into some bugs in our particular version of DBMGUI). I can log into both SQL and DBM, but the DBA user was missing after restore (in DBMGUI, it's registered in the SQL). I created the SUPERDBA user, intending it to be the DBA user, but it doesn't show up anything special in DBMCLI. When I log into the SQLStudio and do a check on the users with SELECT * FROM DOMAIN.USERS, SUPERDBA does show up as having SYSDBA mode.

When trying to do a load_systab from DBMCLI, however, it gives the error: -24908 Wrong SYSDBA.

That's great, since there is no other SYSDBA. The DB Engine is 7.4.3.19 Yes, I am aware that it isn't supported, but that doesn't mean it shouldn't work We have to use 7.4 for this project, otherwise I would gladly use 7.7.

(And yes, we are an SAP customer, and I have already put in an OSS note, but I prefer the forum if possible so everyone can see the answer).

Also in the log we get:

ERR_DBAWRONG: wrong SYSDBA

I checked in the help for MaxDB and there is a command (something like conf_sysdba) to change the sysdba user - but that only works on 7.6 or newer. How can we force it to recognize the SYSDBA user on 7.4.3.x?

(Also, I have seen some mysterious commands changing config settings like SAPDB12, but is this stuff documented anywhere).

Thank you very much,

Noah Silva

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi there!

I see this question is still not answered yet and because my problem is probably closest to this issue, I will post it here.

We have created a homogenous system copy using the Database Studio Version: 7.8.01.16. MaxDB release 7.7.07.014. When we wanted to change the DB user passwords, we followed these steps:

(with database on-line)

- Login to the database with CONTROL user using the password from the source system.

- Password change for the user CONTROL using the command line in Database Studio: user_put CONTROL password=newpassword

- Login to the database with CONTROL user using the new password.

- Password change for the user SUPERDBA using the command line in Database Studio: user_put SUPERDBA password=newpassword

- Login to the database with SUPERDBA user using the new password... and uh oh... user has only "DBM sessions are possible", even though this user should have SQL and DBM access at the same time. However when we login with the password from the source system, we get only SQL sessions are possible without DBM access.

So now we have SUPERDBA with TWO passwords! When we login with SUPERDBA using password from the source system and try to change the password with the SQL command "alter password oldpassword to newpassword" we get this error:

[-103]: SQL statement not available for this application

But with the above command for the password change we are able to change the password for the user SAP<sid> without problem. The SQL command is not working when executed under SUPERDBA user.

What should we do to have user SUPERDBA with SQL and DBM access at the same time? And of course with only one password.

Thanks a lot for help in advance.

former_member229109
Active Contributor
0 Kudos

Hello SHIRUBA Noa,

-> What is the number of the OSS ticket created by you?

-> About MAXDB users & about SAPDB12 entry in the database config file

you could read in the SAP notes:

442944 No authorization to start database (-4008)

913581 Database will not start - "Wrong parameters"

25591 Changing the DBM, SYSDBA and DBA user passwords

-> "We restored a full backup from another server"

You have the source database & target database.

1. Source server.

Please check what are the SYSDBA and schema users of the source database.

Post the output of the SQL statement "SELECT * FROM DOMAIN.USERS"

Also post the output of the dbm command 'user_getall'

2. Target server.

Post the output of the dbm command 'user_getall'.

Post the output of the SQL statement "SELECT * FROM DOMAIN.USERS".

dbmcli -d <SID> -u <dbm-user>,<pwd>

<enter>

dbmcli on <SID>>sql_execute select * from users

<enter>

dbmcli on <SID>>user_getall

<enter>

dbmcli on <SID>>sql_connect <SYSDBA-source>,<pwd>

< tried to connect to the database as SYSDBA user of the source database>

< If it's successful => load system tables as this user. >

dbmcli on <SID>>sql_release

dbmcli on <SID>>load_systab -u <SYSDBA-source>,<pwd> -ud domain

u2026

dbmcli on <SID>>exit

As you already read in the recommended SAP notes after the successful loading the system tables the config files and upc users files will be updated with correct SYSDBA user/pwd information. And you could load system only with SYSDBA user listed in the users database table. To check if the password

is wrong, check that you could connect to the database as I pointed you before:

dbmcli on <SID>>sql_connect <SYSDBA-source>,<pwd>

OK

-> Please post :

dbmcli -d <SID> -u <dbm-user>,<pwd>

<enter>

dbmcli on <SID>>dbm_configget SAPDB12

<enter>

< it's should be DBM user >

dbmcli on <SID>>dbm_configget SAPDB5

<enter>

< it's should be SYSDBA user, see some details in SAP note 442944 >

dbmcli on <SID>>exit

The SAPDB12 entry in the config written when you created the database

as DBM user. With what user did you create the database instance?

By default SAP installation it's control user.

Thank you and best regards, Natalia Khlopina

Edited by: Natalia Khlopina on Feb 20, 2009 7:44 PM

Former Member
0 Kudos

Greetings,

> What is the number of the OSS ticket created by you?

I don't have that information at this moment since I don't have the customer's OSS login/password with me.

> About MAXDB users & about SAPDB12 entry in the database config file

...

As I mentioned in another reply, due to lack of time, some of my co-workers decided to go the route of simply imaging the machine we wanted to copy, and apparently are satisfied with the results, so I don't have to worry about this restore any more - but I want to thank you for your help. There are always knowledgeable and helpful people on SDN, and I appreciate you taking the time to help.

former_member229109
Active Contributor
0 Kudos

Hello SHIRUBA Noa,

-> Please post the additional information as I asked you in my reply above.

-> Don't be confused. Please let me know if you was able to access the SAP notes, please review the SAP note:

25591 Changing the DBM, SYSDBA and DBA user passwords

and for SAP database documentation see the SAP note 767598.

-> After you run the restore on target using the databackup created in the source database, you will have the DBA users of the source database.

Please use the SYSDBA user of the source database to connect to the target

database using SQLStudio & run the SQL statement 'select * from users' to check the users. With the dbm command 'user_getall' you will get the list of the users saved in the UPC containers. After you will load system tables using the SYSDBA user of the source database the UPC containers and .cfg files will be updated & you will see 3 users listed after running dbm command 'user_getall',

also you will have SAPDB5 entry in the *.cfg files as explained in the SAP note 442944.

-> If you need further details about the SAP DB users, please review the MAXDB documentation first.

http://maxdb.sap.com/doc/7_6/default.htm -> Basic Information -> Glossary

-> Database User <-> Database Users >

Thank you and best regards, Natalia Khlopina

lbreddemann
Active Contributor
0 Kudos

Hi Noa,

> I created the SUPERDBA user, intending it to be the DBA user, but it doesn't show up anything special in DBMCLI.

Ok, this should never be done - SUPERDBA (the SYSDBA in SAP installations) get's created during the initial load of systemtables, that is, when the database is created.

If the user is missing after a systemcopy via backup/restore it's quite likely that there is something wrong on the source system.

> When trying to do a load_systab from DBMCLI, however, it gives the error: -24908 Wrong SYSDBA.

Well, now the error is likely because you created an additional user.

> That's great, since there is no other SYSDBA. The DB Engine is 7.4.3.19 Yes, I am aware that it isn't supported, but that doesn't mean it shouldn't work We have to use 7.4 for this project, otherwise I would gladly use 7.7.

> (And yes, we are an SAP customer, and I have already put in an OSS note, but I prefer the forum if possible so everyone can see the answer).

If this database is not for a SAP product (which cannot be, since you have to use a unsupported version of SAP DB), than it doesn't matter if you're a SAP customer or not.

You won't get support for your own SAP DB project via support messages (as long as you did not buy the available extra support for such requests).

> I checked in the help for MaxDB and there is a command (something like conf_sysdba) to change the sysdba user - but that only works on 7.6 or newer. How can we force it to recognize the SYSDBA user on 7.4.3.x?

The goal here should not be to change the SYSDBA but to fix the original problem.

Does a load_systab run through on the source system?

> (Also, I have seen some mysterious commands changing config settings like SAPDB12, but is this stuff documented anywhere).

Sure - we have it here available internal, acessible for development and support stuff.

But I can promise: this is likely not what we will need here.

First check the source database!

regards,

Lars

Former Member
0 Kudos

>>I created the SUPERDBA user, intending it to be the DBA user, but it doesn't show up anything special in

>> DBMCLI.

>Ok, this should never be done - SUPERDBA (the SYSDBA in SAP installations) get's created during the >initial load of systemtables, that is, when the database is created.

See I am a little confused here, it seems when the backup is restored, it restores the SQL users, but not the DBM users. The SQL users are obviously stored in the Database, but where are the DBM users stored? a Config file?

>If the user is missing after a systemcopy via backup/restore it's quite likely that there is something wrong

> on the source system.

The source system works fine.

Former Member
0 Kudos

>If this database is not for a SAP product (which cannot be, since you have to use a unsupported version

>of SAP DB), than it doesn't matter if you're a SAP customer or not.

>You won't get support for your own SAP DB project via support messages (as long as you did not buy

>the available extra support for such requests).

We have to use the unsupported version of SAPDB because that version is the version needed by the (old) version of the SAP product we are using. The customer has an old version and new version, and wants a working copy of the old system.

>I checked in the help for MaxDB and there is a command (something like conf_sysdba) to change the

>sysdba user - but that only works on 7.6 or newer. How can we force it to recognize the SYSDBA user

>on 7.4.3.x?

>The goal here should not be to change the SYSDBA but to fix the original problem.

>Does a load_systab run through on the source system?

It runs on the destination system when we use the version of DBMGUI mentioned, but after restore there is only one DBM user (whichever one we make in the Installation wizard).

Anyway apparently my co-workers solved the problem by cloning the original system (via imaging and import into VMWare). We were worried that taking that route would cause too many problems with changing the hostname, but apparently it's less work than fixing this problem. I do greatly appreciate the help though.