Возможно, лучший способ - написать скрипт, который запускает клиент командной строки 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
ожидать довольно мощный и может сделать жизнь намного проще, так как в этом случае.
, если вы хотите, чтобы сделать запуск сценария без вызова ожидать Используйте притон линию
вставки этого в первой строке вашего скрипта (подсказка: используйте which expect
, чтобы найти местоположение вашего ожидать исполняемым)
#! /usr/bin/expect
затем измените разрешения вашего сценария с ..
chmod 0744 myscript
затем вызвать скрипт
./myscript
DC
сделал эту работу: init_connect = «установить Autocommit = 0» –
Нет, это параметр или аргумент командной строки для туздЫ. Я говорю о клиенте mysql, который дает ошибку «mysql: неизвестная переменная» init_connect = set autocommit = 0 '" –