Data Backup and Recovery
Data Backup and Recovery
Hello.
I am trying to configure snapcreator to backup our Sybase database. I am using snapcreator 4.0p1 on Linux RHEL 6.4. The relevant part of my config file looks like this:
------------------------------------------------------
SYBASE_SERVER=SBT
SYBASE_USER=sybsbt
SYBASE_DATABASES=SBT:sapsa/93616c7425625f5f44b68281853be0e3219c33df62a8bc16c5adc374c7ed88e4
SYBASE_ISQL_CMD=/sybase/SBT/OCS-15_0/bin/isql
SYBASE=/sybase/SBT
SYBASE_LOGDIR=/sybase/SBT/saplog_1
------------------------------------------------------
However, when I start the command for backup, I receive following error during DB quiescence:
------------------------------------------------------
[2013-11-22 15:36:15,348] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:QUIESCE: Quiescing database SBT
[2013-11-22 15:36:15,349] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/1qZre74f5v.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,350] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/ITSVyBIsOE.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,350] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/SYG0mU18iI.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,351] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/BXlOew09mX.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,351] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/FFBBkjwsrf.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,352] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/6y1nvhnKr6.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,353] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/8wcpnpR2v8.sc"] failed with return code 256 and message -SSBT: Command not found.
[2013-11-22 15:36:15,353] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00004] SYBASE:QUIESCE: Quiescing databases failed
------------------------------------------------------
Another problem (that did not occure yet but i expect it to come) is that I have the DB installed with a virtual hostname (DB is using hostname that is not the same as OS host). Therefore the calling for isql must contain -X parameter otherwise an error will be displayed:
------------------------------------------------------
[root@host01 sybase]# /bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Ppassword -SSBT -w 1024 -i /tmp/jYMsmsFNjz.sc"
Msg 1640, Level 16, State 2:
Server 'SBT':
Adaptive Server requires encryption of the login password on the network.
Msg 4002, Level 14, State 1:
Server 'SBT':
Login failed.
CT-LIBRARY error:
ct_connect(): protocol specific layer: external error: The attempt to connect to the server failed.
------------------------------------------------------
How can I configure this -X parameter to be a part of -sql calling ?
Any assistance with these 2 problems would be appreciated.
Thank you.
Josef
Solved! See The Solution
Hello Siva and Karthikeyan for your help. I summarize here the information if anyone else would need to solve the problem. There were 3 more or less independent problems.
1) Connection to encrypted Sybase DB or DB running with different hostname. Add -X parameter to config file:
SYBASE_ISQL_CMD=/sybase/SBT/OCS-15_0/bin/isql -X
2) Problem with command not found:
[2013-11-22 15:36:15,349] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/1qZre74f5v.sc"] failed with return code 256 and message -SSBT: Command not found.
Password of sapsa user must not end with exclamation mark .
3) Problem with quiescence of DB:
[Mon Dec 9 12:20:04 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00002] SYBASE:QUIESCE: Could not get Database master status, ensure database is running!
[Mon Dec 9 12:20:04 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00004] SYBASE:QUIESCE: Quiescing databases failed
[Mon Dec 9 12:20:02 2013] ERROR: [dbhost:9090(4.0.0.1)] SCF-00037: Application quiesce for plugin [sybase] failed with error [] and exit code [1], Exiting!
[Mon Dec 9 12:20:04 2013] ERROR: Task: quiesce with config:sybase@sbt failed
Must be solved with following steps:
a)
[sybsbt@host01~]$ isql -X -Usapsso -Ppasswd -SSBT -w 1024
1> use master
2> go
1> sp_configure "allow updates",1
2> go
Parameter Name Default Memory Used Config Value Run Value Unit Type
------------------------------ ----------- ----------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------- --------------------
allow updates to system tables 0 0 1 1 switch dynamic
(1 row affected)
Configuration option changed. ASE need not be rebooted since the option is dynamic.
Changing the value of 'allow updates to system tables' does not increase the amount of memory Adaptive Server uses.
(return status = 0)
1>
b) restart DB
c)
[sybsbt@host01~]$ isql -X -Usapsa -Ppasswd -SSBT -w 1024
1> use master
2> go
1> update master.dbo.sysdatabases set status = 0 where name = "master"
2> go
(1 row affected)
1> exit
Thanks again.
Br,
Josef
Hi Josef,
Maybe using "-S SBT" instead of "-SSBT" will already do the job!?
Also I would use "-P xxxxx" instead of "-Pxxxxx".
So, try to add a space after the options!
maybe this will help...
Thanks,
Horst
Hello Josef,
The error you have given is discussed here.
http://scn.sap.com/thread/3268654
In the above thread, they are suggesting to unlock the sa account as below.
$> isql -Usapsso -S<SID>
1> sp_locklogin 'sa', 'unlock'
2> go
Please let me know if that helps.
Also about the -X option
This allows below.
initiates the login connection to the server with client-side password encryption. -X enables both extended password encrypted connections and password encrypted connections without plain text password reconnection. isql (the client) specifies to the server that password encryption is desired. The server sends back an encryption key, which isql uses to encrypt your password, and the server uses the key to authenticate your password when it arrives.
If isql crashes, the system creates a core file that contains your password. If you did not use the encryption option, the password appears in plain text in the file. If you used the encryption option, your password is not readable.
Are you using encryption? If not, you may not need the -X
Thanks,
Siva Ramanathan
Hello.
Thank you for your answer. The thread you refer to is discussing a general problem in connecting to Sybase DB but my problem is different. Anyway, to make really sure, I unlocked the account but the result is the same.
Anyway, I will try to re-formulate my problem once again to prevent any misunderstanding. I use snapcreator configuration file for my Sybase DB as described in my original post. When I try to run the backup command, I get following:
------------------------------------------------------
[root@host01 sybase]# /dynamiclandscape/opt/scServer/snapcreator -profile sybase -config sbt -action backup -policy hourly -verbose
########## Detecting Data ONTAP mode for vnsap1012ha ##########
[Sat Nov 23 15:39:27 2013] INFO: STORAGE-03031: System version details of [vfiler].
[Sat Nov 23 15:39:27 2013] INFO: STORAGE-03032: System version details of [vfiler] finished successfully.
########## Agent validation ##########
[Sat Nov 23 15:39:22 2013] INFO: Agent validation completed successfuly for agent dbhost:9090
########## Plugin validation ##########
[Sat Nov 23 15:39:22 2013] INFO: Plugin validation completed successfuly for plugin sybase
########## PRE APPLICATION QUIESCE COMMANDS ##########
[Sat Nov 23 15:39:22 2013] INFO: Pre application quiesce commands are not defined
########## PRE APPLICATION QUIESCE COMMANDS FINISHED SUCCESSFULLY ##########
[Sat Nov 23 15:39:22 2013] INFO: Application auto discovery is not enabled skipping .
[Sat Nov 23 15:39:22 2013] INFO: Validate volume is not enabled skipping validate volume task.
########## Application Quiesce ##########
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:QUIESCE: Starting
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:EXPAND_DB: Entered
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:EXPAND_DB: No database discovery (+ALL) specified, finishing
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:QUIESCE: Quiescing database SBT
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/18q8wSe_Ef.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/xSFks63Vzx.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/6PBjVe_YkJ.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/SFBw3wxkVf.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/S8XK1cZVB5.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/MGf4Tgh_OY.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/_8kBhPV8Af.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00004] SYBASE:QUIESCE: Quiescing databases failed
[Sat Nov 23 15:39:24 2013] ERROR: [dbhost:9090(4.0.0.1)] SCF-00037: Application quiesce for plugin [sybase] failed with error [-SSBT: Command not found.] and exit code [256], Exiting!
[Sat Nov 23 15:39:27 2013] ERROR: Task: quiesce with config:sybase@sbt failed
########## Application Unquiesce ##########
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:UNQUIESCE: Starting
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:EXPAND_DB: Entered
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:EXPAND_DB: No database discovery (+ALL) specified, finishing
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:UQUIESCE: Unquiescing database master
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/wdyz8g_Tn6.sc"] failed with return code 256 and message -SSBT: Command not found.
[Sat Nov 23 15:39:27 2013] INFO: [dbhost:9090 (4.0.0.1)] SYBASE:UQUIESCE: Unquiescing database master failed
[Sat Nov 23 15:39:27 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00005] SYBASE:UNQUIESCE: Unquiescing databases failed
[Sat Nov 23 15:39:24 2013] ERROR: [dbhost:9090(4.0.0.1)] SCF-00032: Application unquiesce failed due to application error. Check logs and application settings. To ignore application errors and proceed with backup you can set APP_IGNORE_ERROR=Y.
[Sat Nov 23 15:39:27 2013] ERROR: Task: unquiesce with config:sybase@sbt failed
[Sat Nov 23 15:39:27 2013] ERROR: NetApp Snap Creator Framework 4.0p1 CLI action backup failed
[root@host01 sybase]#
------------------------------------------------------
I belive my problem lies in the way how the snapcreator constructs the command to quiesnce DB. This part: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/_8kBhPV8Af.sc"] failed with return code 256 and message -SSBT: Command not found. What is written in output debug file is naturally not exactly what is executed in background (my password is not xxxxx) and I would say that my password for sapsa is supplied by snapcreator in "" which creates problem for bash to interpret the command.
My second problem with -X parameter could be seen when I investogated the issue. I tried to run the command manually and this is the result:
------------------------------------------------------
[root@host01 sybase]# /bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Ppasswd -SSBT -w 1024"
Msg 1640, Level 16, State 2:
Server 'SBT':
Adaptive Server requires encryption of the login password on the network.
Msg 4002, Level 14, State 1:
Server 'SBT':
Login failed.
CT-LIBRARY error:
ct_connect(): protocol specific layer: external error: The attempt to connect to the server failed.
[root@tsbp01sap20 sybase]#
------------------------------------------------------
As written in previous error message, Adaptive Server requires encryption of the login password on the network. So if I specify -X parameter, I can log in sucesfully:
------------------------------------------------------
[root@host01 sybase]# /bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Ppasswd -SSBT -w 1024 -X"
1>
------------------------------------------------------
As I wrote in my first post, i belive the reason is that I used virtual hostname for Sybase installation and therefore, although it is on the single host, it uses the "network communication" and -X parameter is needed.
Hope I managed to explain both issues a little better.
Thank you.
Josef
Hello ,
It executes following sql queries one by one and check at least one of the query satisfy, during quiesce operation.
#status3 - quiesce database - (AND) True(Tq) & False(Fq)
" SELECT CASE WHEN (status3 & 128) = 0 THEN 'Fq' ELSE 'Tq' END AS [(qui)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status - mixed log and data - True(Tm) & False(Fm)
#status - no options set
" SELECT CASE WHEN status = 0 THEN 'Tm' ELSE 'Fm' END AS [(mix)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status - select_into/bulkcopy -(AND) True(Ts) & False(Fs)
" SELECT CASE WHEN (status & 4) = 0 THEN 'Fs' ELSE 'Ts' END AS [(sel)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status - trunc_log_on_chkpt - (AND) True(Tt) & False(Ft)
" SELECT CASE WHEN (status & 😎 = 0 THEN 'Ft' ELSE 'Tt' END AS [(trn)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status - ddl in tran - (AND) True(Td) & False(Fd)
" SELECT CASE WHEN (status & 512) = 0 THEN 'Fd' ELSE 'Td' END AS [(ddl)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status2 - abort_tran_on_log_full - (AND) True(Ta) & False(Fa)
" SELECT CASE WHEN (status2 & 1) = 0 THEN 'Fa' ELSE 'Ta' END AS [(abt)]
from master.dbo.sysdatabases where name=\"".$db."\"",
#status - allow_nulls_by_default - (AND) True(Tn) & False(Fn)
" SELECT CASE WHEN (status & 8192) = 0 THEN 'Fn' ELSE 'Tn' END AS [(aln)]
from master.dbo.sysdatabases where name=\"".$db."\""
Can you copy the one of the sql quey into /tmp/testfile and try to execute the below sql query from scagent running user, I hope you run the scagent as root user
/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 –I /tmp/testfile
It look like ‘sybsbt’ user don’t have access to "/sybase/SBT/OCS-15_0/bin/isql”. I think some environment variable is missing.
Regards,
-------------------------------------------------------
Never give up. Never, never give up!
-------------------------------------------------------
Hello.
I created the /tmp/testfile with first SQL query:
------------------------------------------------------
SELECT CASE WHEN (status3 & 128) = 0 THEN 'Fq' ELSE 'Tq' END AS [(qui)]
from master.dbo.sysdatabases
go
------------------------------------------------------
When I try to execute it with the given command, it fails but only because this -X parameter is missing. Kindly see the output:
------------------------------------------------------
[root@host01 sybase]# /bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Ppasswd -SSBT -w 1024 -i /tmp/testfile"
Msg 1640, Level 16, State 2:
Server 'SBT':
Adaptive Server requires encryption of the login password on the network.
Msg 4002, Level 14, State 1:
Server 'SBT':
Login failed.
CT-LIBRARY error:
ct_connect(): protocol specific layer: external error: The attempt to connect to the server failed.
[root@host01 sybase]#
------------------------------------------------------
However, when I add this -X parameter, query is executed properly:
------------------------------------------------------
[root@host01 sybase]# /bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Ppasswd -SSBT -w 1024 -i /tmp/testfile -X"
(qui)
-----
Fq
Fq
Fq
Fq
Fq
Fq
Fq
Fq
Fq
(9 rows affected)
[root@host01 sybase]#
------------------------------------------------------
For this reasons I belive that snapcreator is just not generating the command syntax properly (as mentioned before I would guess for a " character at password) and also this is the reason why I think that it is necessery to use -X parameter for a distributed SAP installation where virtual hostnames are used for SAP application server and also for Sybase database.
Thank you very much for your assistance.
Josef
Hello Josef,
Here is another thought.
Could you please try this and let us know the results?
SYBASE_ISQL_CMD=/sybase/SBT/OCS-15_0/bin/isql
to
SYBASE_ISQL_CMD=/sybase/SBT/OCS-15_0/bin/isql -X
Thanks,
Siva Ramanathan
Hello Siva.
Thanks much for your replay. Now the -X parameter problem is solved. System adds this parameter into the command. Howerver, there is still the problem with the command parsing:
------------------------------------------------------
[Tue Nov 26 08:19:51 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -X -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/eZpaHcl27p.sc"] failed with return code 256 and message -SSBT: Command not found.
------------------------------------------------------
Thank you for your help.
Josef
Josef,
You are correct in the assumption of debug logs showing xxxxx as the password.
Since we don't want the log files to hold sensitive information, we replace the password with xxxxx
Meanwhile, let me talk to who is the developer of this Sybase plugin and see how best to address this issue here.
Thanks much for bringing this to our attention.
Regards,
Siva Ramanathan
Hello Siva.
Did you manage to find some solution or workaround ? If you need any logs or tests from my side, please let me know.
Thank you.
Josef
Hello Josef,
I am sorry, I did not find any solution yet.
Note: In the US, this is a 4 days holiday weekend, and my response will be delayed.
Here are the questions, I have.
1) Please login as sybsbt and provide me with the output of below commands.
set
which isql
echo $SYBASE
ls -al /sybase/SBT
cat /sybase/SBT/interfaces
I think, isql does not know about SBT. (because of missing interfaces or wrong interfaces file)
Thanks,
Siva Ramanathan
Hello Siva.
Here is the output:
------------------------------------------------------
[sybsbt@host01 ~]$ set
COLORS /etc/DIR_COLORS
_
addsuffix
argv ()
autolist
consoletype pty
csubstnonl
cwd /homedir/home/sybsbt
dirstack /homedir/home/sybsbt
echo_style both
edit
file /homedir/home/sybsbt/.i18n
gid 4200
group sapsys
histchar !
histdup erase
history 1000
home /homedir/home/sybsbt
killring 30
loginsh
modules_shell tcsh
owd
path (/sybase/SBT/ASE-15_0/jobscheduler/bin /sybase/SBT/ASE-15_0/bin /sybase/SBT/ASE-15_0/install /sybase/SBT/DBISQL/bin /sybase/SBT/OCS-15_0/bin /usr/local/bin /bin /usr/bin)
prompt %{\033]0;%n@%m:%c\007%}[%n@%m %c]%#
prompt2 %R?
prompt3 CORRECT>%R (y|n|e|a)?
promptchars $#
savehist (1024 merge)
shell /bin/csh
shlvl 1
sourced 1
status 0
tcsh 6.17.00
term xterm
tty pts/0
uid 5010
user sybsbt
version tcsh 6.17.00 (Astron) 2009-07-10 (x86_64-unknown-linux) options wide,nls,dl,al,kan,sm,rh,color,filec
[sybsbt@host01 ~]$ which isql
/sybase/SBT/OCS-15_0/bin/isql
[sybsbt@host01 ~]$ echo $SYBASE
/sybase/SBT
[sybsbt@host01 ~]$ ls -al /sybase/SBT
total 156
drwxr-x---. 26 sybsbt sapsys 4096 Nov 19 11:56 .
drwxr-x---. 3 sybsbt sapsys 4096 Nov 15 13:22 ..
drwxr-x---. 16 sybsbt sapsys 12288 Nov 27 11:04 ASE-15_0
drwxr-x---. 59 sybsbt sapsys 8192 Nov 19 09:28 charsets
drwxr-x---. 3 sybsbt sapsys 4096 Nov 19 09:28 collate
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:32 config
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:35 data
drwxr-x---. 5 sybsbt sapsys 4096 Nov 19 09:33 DBISQL
-rw-r-----. 1 sybsbt sapsys 224 Nov 19 09:49 interfaces
-rw-r-----. 1 sybsbt sapsys 224 Nov 19 09:43 interfaces.1
-rw-r-----. 1 sybsbt sapsys 145 Nov 19 09:43 interf.old
drwxr-x---. 6 sybsbt sapsys 4096 Nov 19 09:31 jConnect-7_0
drwxr-x---. 6 sybsbt sapsys 4096 Nov 19 09:28 jre64
drwxr-x---. 3 sybsbt sapsys 4096 Nov 19 09:31 jutils-3_0
drwxr-x---. 4 sybsbt sapsys 4096 Nov 19 09:29 locales
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:36 log
drwxr-x---. 11 sybsbt sapsys 4096 Nov 19 09:32 OCS-15_0
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:51 sapdata
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:51 sapdiag
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:50 saplog_1
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:51 saptemp
drwxr-x---. 9 sybsbt sapsys 4096 Nov 19 09:31 shared
-rw-r--r--. 1 sybsbt sapsys 585 Nov 27 11:06 startdb.log
-rwxr-x---. 1 sybsbt sapsys 1365 Nov 19 09:35 SYBASE.1.csh
-rw-r-----. 1 sybsbt sapsys 731 Nov 19 09:35 SYBASE.1.env
-rwxr-x---. 1 sybsbt sapsys 1096 Nov 19 09:35 SYBASE.1.sh
-rwxr-x---. 1 sybsbt sapsys 1365 Nov 19 09:37 SYBASE.csh
-rw-r-----. 1 sybsbt sapsys 731 Nov 19 09:37 SYBASE.env
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:28 Sybase_Install_Registry
-rwxr-x---. 1 sybsbt sapsys 1096 Nov 19 09:37 SYBASE.sh
drwxr-x---. 3 sybsbt sapsys 4096 Nov 19 09:35 SYBDIAG
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:43 sybsystem
drwxr-x---. 2 sybsbt sapsys 4096 Nov 19 09:42 sybtemp
drwxr-x---. 4 sybsbt sapsys 4096 Nov 19 09:28 sybuninstall
drwxr-x---. 6 sybsbt sapsys 4096 Nov 19 09:31 SYSAM-2_0
drwxr-x---. 7 sybsbt sapsys 4096 Nov 19 09:35 WS-15_0
[sybsbt@host01 ~]$ cat /sybase/SBT/interfaces
SBT
master tcp ether dbhost 41101
query tcp ether dbhost 41101
SBT_BS
master tcp ether dbhost 41102
query tcp ether dbhost 41102
SBT_JSAGENT
master tcp ether dbhost 41103
query tcp ether dbhost 41103
------------------------------------------------------
Thanks for your help and enjoy the longer weekend
Best regards,
Josef
Thank you Josef.
1) Please provide me with cat /sybase/SBT/SYBASE.csh
2) netstat -na | grep 4110
3) Does your password end in ! character? (like mypassword!)
If so, please try changing the password to something simple and try again.
If the password ends in ! and csh might interpret as history character (unless you escape using \!) - this might make the script to throw -SSBT command not found error.
Please let me know.
Thanks.
Hi Siva.
1) /sybase/SBT/SYBASE.csh
#
# Sybase Product Environment variables
#
setenv SYBASE_JRE7_32 /sybase/SBT/shared/JRE-7_0_7_32BIT
setenv SYBASE_JRE7 /sybase/SBT/shared/JRE-7_0_7_64BIT
setenv SYBASE_JRE7_64 /sybase/SBT/shared/JRE-7_0_7_64BIT
setenv SYBASE_OCS OCS-15_0
if ( $?INCLUDE == "0" ) then
setenv INCLUDE ""
endif
setenv INCLUDE /sybase/SBT/OCS-15_0/include:"$INCLUDE"
if ( $?LIB == "0" ) then
setenv LIB ""
endif
setenv LIB /sybase/SBT/OCS-15_0/lib:"$LIB"
if ( $?PATH == "0" ) then
setenv PATH ""
endif
setenv PATH /sybase/SBT/OCS-15_0/bin:"$PATH"
if ( $?LD_LIBRARY_PATH == "0" ) then
setenv LD_LIBRARY_PATH ""
endif
setenv LD_LIBRARY_PATH /sybase/SBT/OCS-15_0/lib:/sybase/SBT/OCS-15_0/lib3p64:/sybase/SBT/OCS-15_0/lib3p:"$LD_LIBRARY_PATH"
if ( $?PATH == "0" ) then
setenv PATH ""
endif
setenv PATH /sybase/SBT/DBISQL/bin:"$PATH"
setenv SYBASE /sybase/SBT
setenv SYBASE_ASE ASE-15_0
if ( $?PATH == "0" ) then
setenv PATH ""
endif
setenv PATH /sybase/SBT/ASE-15_0/bin:/sybase/SBT/ASE-15_0/install:"$PATH"
setenv SYBROOT /sybase/SBT
setenv SYBASE_JRE_RTDS /sybase/SBT/shared/JRE-7_0_7_64BIT
if ( $?LD_LIBRARY_PATH == "0" ) then
setenv LD_LIBRARY_PATH ""
endif
setenv LD_LIBRARY_PATH /sybase/SBT/ASE-15_0/lib:"$LD_LIBRARY_PATH"
setenv SYBASE_WS WS-15_0
if ( $?PATH == "0" ) then
setenv PATH ""
endif
setenv PATH /sybase/SBT/ASE-15_0/jobscheduler/bin:"$PATH"
------------------------------------------------------
2) netstat -na | grep 4110
This is status when SAP is down:
tcp 0 0 10.254.113.10:41101 0.0.0.0:* LISTEN
tcp 0 0 10.254.113.10:41102 0.0.0.0:* LISTEN
tcp 0 0 10.254.113.10:41103 0.0.0.0:* LISTEN
tcp 0 0 10.254.113.10:50900 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:50895 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50896 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50900 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50901 ESTABLISHED
tcp 0 0 10.254.113.10:56830 10.254.113.10:41101 TIME_WAIT
tcp 0 0 10.254.113.10:50899 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:56831 TIME_WAIT
tcp 0 0 10.254.113.10:41101 10.254.113.10:50898 ESTABLISHED
tcp 0 0 10.254.113.10:50902 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50899 ESTABLISHED
tcp 0 0 10.254.113.10:50896 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:50897 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50897 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:56834 TIME_WAIT
tcp 0 0 10.254.113.10:41103 10.254.113.10:50960 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50902 ESTABLISHED
tcp 0 0 10.254.113.10:50898 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:50960 10.254.113.10:41103 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:56833 TIME_WAIT
tcp 0 0 10.254.113.10:50901 10.254.113.10:41101 ESTABLISHED
tcp 0 0 10.254.113.10:41101 10.254.113.10:50895 ESTABLISHED
------------------------------------------------------
3) Passwords
I suspected the same but my password is containing only letters and digits like abcde123.
Thanks for help.
Best regards,
Josef
Hello Josef,
Are you able to ping dbhost?
from [sybsbt@host01 ~]$ping dbhost
If you are not able to ping you may add an entry to /etc/hosts for dbhost
Thanks,
Siva Ramanathan
Hi.
Yes of course, I can ping the dbhost. But even if I could not, I would probably not see an error message saying "-SSBT: Command not found." 🙂
[Tue Nov 26 08:19:51 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -X -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/eZpaHcl27p.sc"] failed with return code 256 and message -SSBT: Command not found.
The problem must be in command parsing. Either snapcreator does not correctly compose the command or something in the environment variable causes parsing to fail. Anyway, my installation is clean SAP NW on Sybase ASE with no additional setup. It is just installed as High-Available installation, thats all. Maybe it could be possible for NetApp to reproduce the error in some sandbox environment ?
Br,
Josef
Just to double check again,
your snapcreator agent hostname in the prompt says as "host01" (why host01 and why not dbhost?)
Are you able to ping it from the host01 itself? not from outside (ex: from snap creator server)
Because, I am seeing similar messages in the SAP communities when the hostname is not resolved properly.
The other thing you can test for me is replace dbhost with IP address in the file below and try a backup again.
[sybsbt@host01 ~]$ cat /sybase/SBT/interfaces
SBT
master tcp ether dbhost 41101
query tcp ether dbhost 41101
SBT_BS
master tcp ether dbhost 41102
query tcp ether dbhost 41102
SBT_JSAGENT
master tcp ether dbhost 41103
query tcp ether dbhost 41103
Sure, I will try to reproduce this in the lab as time permits this week.
Thanks,
Siva Ramanathan
I am available for a webex if that makes our troubleshooting easier.
Please email me your availability to sivar at netapp.com
Hello Siva and Karthikeyan for your help. I summarize here the information if anyone else would need to solve the problem. There were 3 more or less independent problems.
1) Connection to encrypted Sybase DB or DB running with different hostname. Add -X parameter to config file:
SYBASE_ISQL_CMD=/sybase/SBT/OCS-15_0/bin/isql -X
2) Problem with command not found:
[2013-11-22 15:36:15,349] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00012] SYBASE:RUN_CMD: Command [/bin/su - sybsbt -c "/sybase/SBT/OCS-15_0/bin/isql -Usapsa -Pxxxxx -SSBT -w 1024 -i /tmp/1qZre74f5v.sc"] failed with return code 256 and message -SSBT: Command not found.
Password of sapsa user must not end with exclamation mark .
3) Problem with quiescence of DB:
[Mon Dec 9 12:20:04 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00002] SYBASE:QUIESCE: Could not get Database master status, ensure database is running!
[Mon Dec 9 12:20:04 2013] ERROR: [dbhost:9090 (4.0.0.1)] [syb-00004] SYBASE:QUIESCE: Quiescing databases failed
[Mon Dec 9 12:20:02 2013] ERROR: [dbhost:9090(4.0.0.1)] SCF-00037: Application quiesce for plugin [sybase] failed with error [] and exit code [1], Exiting!
[Mon Dec 9 12:20:04 2013] ERROR: Task: quiesce with config:sybase@sbt failed
Must be solved with following steps:
a)
[sybsbt@host01~]$ isql -X -Usapsso -Ppasswd -SSBT -w 1024
1> use master
2> go
1> sp_configure "allow updates",1
2> go
Parameter Name Default Memory Used Config Value Run Value Unit Type
------------------------------ ----------- ----------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------- --------------------
allow updates to system tables 0 0 1 1 switch dynamic
(1 row affected)
Configuration option changed. ASE need not be rebooted since the option is dynamic.
Changing the value of 'allow updates to system tables' does not increase the amount of memory Adaptive Server uses.
(return status = 0)
1>
b) restart DB
c)
[sybsbt@host01~]$ isql -X -Usapsa -Ppasswd -SSBT -w 1024
1> use master
2> go
1> update master.dbo.sysdatabases set status = 0 where name = "master"
2> go
(1 row affected)
1> exit
Thanks again.
Br,
Josef
I'd be extremely careful to update status within the master database! That's definitely asking for problems down the road.
I ran into the same defect with Snapcreator's Sybase ASE plugin myself some time ago, with some new SAP systems running on Sybase ASE 15.7.SP101.
As documented in this thread, the plugin searches for databases status modulo various, most important for the databases model and master is mod 0. In older releases this was correct, these database had status 0.
But things changed with ASE version 15.7 SP100 and higher. I had to open SAP call to clarify, here's the answer
[quote=SAP]
Status 1 in sysdatabases is correct for model and master.
ASE 15.7 SP100 has various new features, amongst on handling text columns and shrink database, that require certain ASE internals to be in place. The status value of 1 in sysdatabases from ASE 15.7 SP100 is to show that the database was created using ASE 15.7 SP100 or higher or was upgraded to successfully to that version and thus that ASE can be certain these internals are correct. This new value was introduced with CR 733495, the documentation wasn't yet updated, this will be done with CR 693828 "Doc CR: ASE sysdatabases status columns need to include newer values in manual pages.".
I've created KBA 1938310 (will be released shortly) to document this, please contact your backup tool vendor to check their routines. Thank you.
[/quote]
SAP note 1938310 exists nowadays.
Personally I made a workaround of changing the status query for status=0 status =1 and it works. Wanted to open a NetApp support case last year but got sidetracked with other things, guess I'll do it today since I found this thread by chance to get an official fix (or est. date for a fix)
Again, do not update status bits of databases in 15.7.SP100, that could end ugly when you want to upgrade in few months and find weird errors from the upgrade scripts...