There is a big difference between the way you coded the call to QSH, and the way you show running this in QP2TERM, versus the way you have coded this using QP2SHELL. In QSH, you used an embedded ";" -- so, in effect, you are passing two commands to QSH. But you did not do that in your call to QP2SHELL ...

There is a big difference when you do a "cd" to a directory and then run a command from there, because that directory becomes the "current directory" and that will not be the current directory in your QP2SHELL example, the way you have coded it.

I believe you can accomplish what you want as follows:

CALL QP2SHELL PARM('/QOpenSys/bin/sh' 'cd /QOpenSys/usr/local/mysql/mysql-5.1.39-i5os-power-64bit; bin/mysqld_safe --user=mysql &')

Or, you could write a PASE shell script and call QP2SHELL to run that script.

Hope that helps,

Mark S. Waterbury

> On 6/25/2014 5:03 PM, Dale Janus wrote:
I knew there was a difference between them, but I am having trouble understanding the differences.

When I run this command:
'--user=mysql &')

I get this error:

bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
Press ENTER to end terminal session.

As I see it, I have a big long path that ends with an executable program mysqld_safe. It needs a parameter of '--user=mysql &'

I am just confused that my end program works to end MYSQL but my start program does not in QSH.

This cl program ends mysql:
QSH CMD('cd +
-power-64bit; bin/mysqladmin -u root shutdown')

But this cl program will not start it
QSH CMD('cd +
-power-64bit; bin/mysqld_safe --user=mysql &')

I can't see much difference between these two. change directory to a big long path, then call an executable program, with parameters

This thread ...


Return to Archive home page | Return to MIDRANGE.COM home page