22
0
Fork 0

restaurer plusieurs bases

This commit is contained in:
pdiogoantunes 2017-03-01 09:50:00 +01:00
parent 454aa02872
commit 4d727c4d56
1 changed files with 21 additions and 0 deletions

View File

@ -664,6 +664,27 @@ for file in *.txt; do
done
~~~
Si cela concerne plusieurs bases répartis dans différents répertoires :
<se placer sur le répertoire en question (/home/mysqltmp/)>
~~~{.bash}
for dir in *
do
db=$dir
mysql -e "create database ${dir};"
for file in $dir/*.sql
do
mysql $db <$file
done
grep CHARSET= *txt
for file in $dir/*.txt
do
tablename=$(basename $file .txt)
echo "LOAD DATA INFILE '$PWD/$file' INTO TABLE $tablename" CHARACTER SET utf8 | mysql $db
done
done
~~~
> *Note 1* : Attention, l'utilisateur MySQL doit avoir le droit de lecture sur les fichiers .txt
Se positionner dans un répertoire où mysql a les droits (mysqltmp - /home/mysqltmp par ex).