Den bedste måde er måske at skrive et script, der starter mysql-kommandolinjeklienten og derefter automatisk kører den sql, du ønsker, før den overdrager kontrollen til dig.
linux kommer med et program kaldet 'forvente'. den interagerer med skallen på en sådan måde, at den efterligner dine tastetryk. den kan indstilles til at starte mysql, vent på, at du indtaster din adgangskode. kør yderligere kommandoer såsom SET autocommit = 0;
gå derefter ind i interaktiv tilstand, så du kan køre enhver kommando, du ønsker.
for mere om kommandoen SET autocommit = 0;
se.. http://dev.mysql. com/doc/refman/5.0/en/innodb-transaction-model.html
Jeg bruger forventer at logge ind på et kommandolinjeværktøj i mit tilfælde, det starter ssh, opretter forbindelse til fjernserveren, starter programmet indtaster mit brugernavn og adgangskode og overdrager derefter kontrollen til mig. sparer mig for en masse skrivning :)
http://linux.die.net/man/1/expect
DC
Forvent manuskript leveret af Michael Hinds
spawn /usr/local/mysql/bin/mysql
expect "mysql>"
send "set autocommit=0;\r"
expect "mysql>" interact
forventer er ret kraftfuld og kan gøre livet meget lettere som i dette tilfælde.
hvis du ønsker at få scriptet til at køre uden at kalde, skal du forvente brug shebang-linjen
indsæt dette som den første linje i dit script (tip:brug which expect
for at finde placeringen af din forventede eksekverbare)
#! /usr/bin/expect
skift derefter tilladelserne til dit script med..
chmod 0744 myscript
kald derefter scriptet
./myscript
DC