Есть ли способ отключить вертикальную настройку my.cnf из сценария оболочки, выполняющего mysql? - PullRequest
0 голосов
/ 01 июня 2011

Поскольку режим вывода по вертикали команды mysql очень хорош, я настроил мою среду по умолчанию для вывода по вертикали. Я сделал это, создав c: \ windows \ my.cnf, который содержит

[mysql]
vertical

К сожалению, все мои сценарии оболочки mysql также используют этот параметр, что приводит к хаосу при разборе выходных данных команды mysql.

Есть ли параметр командной строки или SQL, который я могу использовать для переопределения вертикальной настройки в my.cnf при вызове mysql из сценария оболочки?

В частности, у меня есть скрипт оболочки, который выглядит примерно так

set SQLFILE=.\cmdelOldRecords.sql
set TMPCKTFILE=.\temp2.sql

:: get all "_aud" tables from database
mysql -h %1 --port=3306 --database=%MYSQL_DB% --user=%MYSQL_USER% --password=%MYSQL_PASSWORD% -B -N -e "show tables like '%%\_aud'" > %TMPCKTFILE%

for /F "tokens=1" %%i in ('type %TMPCKTFILE%') do (
    echo drop table %%i; >> %SQLFILE%
    echo commit; >> %SQLFILE%
)

mysql -h %1 --port=3306 --database=%MYSQL_DB% --user=%MYSQL_USER% --password=%MYSQL_PASSWORD% -B -N < %SQLFILE%

Но my. \ CmdelOldRecords.sql заканчивается такими вещами, как

drop table ***************************; 

Ответы [ 2 ]

1 голос
/ 01 июня 2011

есть ключ -E (или --vertical), чтобы заставить клиента действовать вертикально это означает, что вы можете попробовать:

mysql --vertical=false
0 голосов
/ 01 июня 2011

Ваш клиент может переопределить опции my.cnf , имея файл ~ / .my.cnf.

Я не уверен, что все параметры можно переопределить, прочитав страницу руководства, которую я разместил, и / или эксперименты скажут вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...