I use MySQL a number of different ways:  the C API, from PHP, from the
command line, and often from shell scripts run by other users or from
crontab entries.  The latter two uses present a couple of problems that
could be fixed easily through some minor changes to the code for the "mysql"
program (mysql.cc).

I'd like to see the following 2 changes:

(1) Blank out the password in the environment variables while running for
security.

Otherwise, on any system where one can run a "ps" command (most Unix
derivatives), any user can easily see the password when it is given on the
command line to the '-p' argument.  As there is no other reasonable way to
provide the password, this is a common problem.  The C/C++ code to do this
is simple, small and efficient.


(2) When running in a batch mode, one usually wants to know if the command
worked or not.  The default is to tell the user absolutely nothing (example
1 below).  Adding the '-v' (verbose) flag gets the user some feedback -- the
SQL that was submitted -- but says nothing about success (example 2 below).
Adding a second 'v' (-vv) adds the results of the command to the feedback
(example 3 below).  This seems completely backwards.  I know what SQL I
submitted; I want to know if it worked.

I'd like to see the meaning of the '-v' and '-vv' flags reversed, giving the
results with the first 'v', and then echoing the SQL along with the results
with the second 'v'.

Example 1:
49 hostname:~> mysql -pmypass -e 'Update foo Set val = 1 Where id = 1;' temp
50 hostname:~>


Example 2:
50 hostname:~> mysql -v -pmypass -e 'Update foo Set val = 1 Where id = 1;'
temp
--------------
Update foo Set val = 1 Where id = 1
--------------

51 hostname:~>


Example 3:
51 hostname:~> mysql -vv -pmypass -e 'Update foo Set val = 1 Where id = 1;'
temp
--------------
Update foo Set val = 1 Where id = 1
--------------

Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0

Bye
52 hostname:~>



---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to