Executando uma série de scripts no MySQL

1

Eu tenho arquivos com nomes como:

File1_01.sql
File1_02.sql
File2_01.sql
File2_02.sql

Eu preciso executar todos os scripts para File1 primeiro (mas isso pode ser feito em paralelo), depois todos os scripts para File2. Qual é a minha melhor maneira de fazer isso?

Obrigado,

-Scott

    
por genevish 12.07.2016 / 23:16

1 resposta

2

Eu não sei sobre o "melhor" caminho, mas eu provavelmente não faria isso em paralelo, apenas algo simples como:

for sql in *.sql; do
   mysql options <"$sql"
done

Se você precisar para fazer isso em paralelo:

for prefix in File1 File2; do
  for sql in ${prefix}_*.sql; do
    mysql options <"$sql" &
  done
  wait
done

Primeiro, pegará os arquivos File1* e iniciará o MySQL em paralelo. Em seguida, espere que eles terminem antes de fazer o mesmo com todos os arquivos File2* .

    
por 12.07.2016 / 23:35