Talvez a melhor maneira seja escrever um script que inicie o cliente de linha de comando mysql e, em seguida, execute automaticamente o sql desejado antes de passar o controle para você.
linux vem com um aplicativo chamado 'expect'. ele interage com o shell de forma a imitar seus toques de tecla. ele pode ser configurado para iniciar o mysql, espere você digitar sua senha. execute outros comandos como
SET autocommit = 0;
em seguida, entre no modo interativo para poder executar qualquer comando que desejar. para saber mais sobre o comando
SET autocommit = 0;
veja .. http://dev.mysql. com/doc/refman/5.0/en/innodb-transaction-model.html
Eu uso o expect para fazer login em um utilitário de linha de comando no meu caso, ele inicia o ssh, conecta-se ao servidor remoto, inicia o aplicativo, insere meu nome de usuário e senha e passa o controle para mim. me poupa muita digitação :)
http://linux.die.net/man/1/expect
DC
Espere script fornecido por Michael Hinds
spawn /usr/local/mysql/bin/mysql
expect "mysql>"
send "set autocommit=0;\r"
expect "mysql>" interact
expect é bastante poderoso e pode tornar a vida muito mais fácil como neste caso.
se você quiser fazer o script rodar sem chamar, use a linha shebang
insira isso como a primeira linha em seu script (dica:use
which expect
para encontrar a localização do seu executável esperado) #! /usr/bin/expect
em seguida, altere as permissões do seu script com ..
chmod 0744 myscript
então chame o script
./myscript
DC