У меня есть sql-файлы, «разделенные» следующим образом:
> tree sql
sql
├── adresse_trigger_update_before.sql
├── attribut_trigger_update_before.sql
├── categorie_trigger_update_before.sql
├── duplicate_records.sql
├── horaire_trigger_update_before.sql
├── partenaire_trigger_update_before.sql
├── personne_trigger_update_before.sql
└── produit_trigger_update_before.sql
0 directories, 8 files
>
Вот все мои попытки:
>mysql mydatabase -e "source sql/file1.sql"
>
>mysql mydatabase -e "source sql/*"
>ERROR at line 1: Failed to open file 'sql/*', error: 2
>cat sql/* > mysql mydatabase
>cat : option invalid -- 'p'
>mysql mydatabase -e "source sql/*"
>bash: sql/* : ambiguous redirect
Как загружать сразу несколько файлов в MySQL?
Nota: есть только проблема one , с которой я столкнулся: загружать все файлы в папку «sql
» одновременно. Никакой другой проблемы (я удалил пользователя и пароль, чтобы быть более точными о реальной проблеме).
Любая идея, как это сделать?
Вот мое решение:
find sql/ -type f | awk '{system("mysql -u root -pXXX -h localhost mydatabase < "$0)}'
Вместо этого вы должны использовать "source code"/*.
Для проблемы с паролем попробуйте указать его, например mysql -u XX -p "XX"