Возможно, лучший способ - написать скрипт, который запускает клиент командной строки mysql, а затем автоматически запускает любой SQL, который вы хотите, прежде чем он передаст вам управление.
linux поставляется с приложением под названием «ожидаем». он взаимодействует с оболочкой таким образом, чтобы имитировать нажатия клавиш. можно установить запуск mysql, подождите, пока вы введете свой пароль. выполните другие команды, такие как SET autocommit = 0;
, затем перейдите в интерактивный режим, чтобы вы могли выполнить любую команду, какую захотите.
Подробнее о команде SET autocommit = 0;
см. http://dev.mysql.com/doc/refman/5.0/en/innodb-transaction-model.html
Я использую ожидаем, чтобы войти в утилиту командной строки, в моем случае она запускает ssh, подключается к удаленному серверу, запускает приложение, вводит мое имя пользователя и пароль, затем передает управление мне. спасает меня куча набрав:)
http://linux.die.net/man/1/expect
DC
Ожидайте сценарий, предоставленный Майклом Хиндсом
spawn /usr/local/mysql/bin/mysql
expect "mysql>"
send "set autocommit=0;\r"
expect "mysql>" interact
Ожидайте, что это довольно сильно и может сделать жизнь намного проще, как в этом случае.
если вы хотите, чтобы скрипт выполнялся без вызова ожидаемого, используйте строку shebang
вставьте это в качестве первой строки в вашем скрипте (подсказка: используйте which expect
, чтобы найти местоположение ожидаемого исполняемого файла)
#! /usr/bin/expect
затем измените разрешения вашего скрипта с помощью ..
chmod 0744 myscript
затем вызвать скрипт
./myscript
DC