Crie vários bancos de dados em uma linha de comando?

2

Este comando pode ser roteirizado?

$ mysqladmin -u username -p create databasename

Gostaria de fazer isso por vários nomes de uma só vez? Também gostaria de definir permissões para todos de uma vez também. Não tenho certeza de como fazer isso?

    
por cea 27.10.2013 / 05:09

1 resposta

3

Para a primeira pergunta, é trivial:

$ for db in fred barney wilma ; do mysqladmin -u username -p create $db ; done

Quanto à configuração de permissões, isso é complicado o suficiente para que você possa apenas escrever um script .

Considere que é possível escrever um arquivo de texto cheio de SQL e depois carregá-lo no banco de dados de uma só vez:

$ mysql -u username -p$pass $db < stuff.sql

Observe que o comando mysql(1) possui dois formulários para o sinalizador -p : se houver um espaço após ele, ele informará ao usuário interativamente a senha. Se você seguir -p com uma senha, sem um espaço entre eles, ele a usará. Isso é menos seguro , naturalmente.

    
por 27.10.2013 / 05:23

Tags