Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como escrever e executar um script de shell para criar um banco de dados mysql e uma tabela


Atualizar

Durante minha próxima sessão, percebi que o mysql não era reconhecido pelo terminal. Percebi que sou burro e estava sempre fazendo as coisas erradas. Não use alias para resolver para um binário.

Exemplo, não use alias mysql="/Applications/MAMP/Library/bin/mysql"

Em vez de

export PATH=$PATH:/Applications/MAMP/Library/bin/

Isso permitirá que você use os binários apropriadamente via bash, e você também terá acesso a todos os binários do mysql, incluindo mysqladmin, etc., a partir do terminal. :) Scripts felizes!

Exemplo de script com variáveis ​​de ambiente apropriadas:
#!/bin/bash

echo ""
echo Reloading Database 
echo ""
echo Using
echo PROJECT_BUILD_HOME: $PROJECT_BUILD_HOME
echo MYSQL: $(which mysql)
echo PHP: $(which php)
echo ""
echo ""

mysqladmin -u root -pmypass drop projectbuild
mysqladmin -u root -pmypass create projectbuild
gunzip < $PROJECT_BUILD_HOME/pack/projectbuild.sql.gz | mysql -u root -pmypass projectbuild

Resposta antiga abaixo

Eu tinha a configuração do mysql no .profile dos meus usuários como alias mysql="/path/to/mysql".

Em vez de,

Eu usei export mysql=/path/to/mysql

E no meu script bash, usei $ mysql.

Exemplo
cat /path/to/my/file | $mysql -h localhost -u root -padmin