sql >> Databáze >  >> RDS >> Mysql

Jak napsat a spustit skript Shell pro vytvoření databáze mysql a tabulky

Aktualizovat

Během mé další relace jsem si uvědomil, že mysql nebyl rozpoznán terminálem. Uvědomil jsem si, že jsem hloupý a vždycky jsem dělal věci špatně. Nepoužívejte alias k překladu do binárního kódu.

Příklad, nepoužívejte alias mysql="/Applications/MAMP/Library/bin/mysql"

Místo toho

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

To vám umožní správně používat binární soubory prostřednictvím bash a také získáte přístup ke všem binárním souborům mysql včetně mysqladmin atd. z terminálu. :) Hodně štěstí při psaní!

Příklad skriptu s příslušnými proměnnými prostředí:

#!/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

Stará odpověď níže

Měl jsem nastavení mysql v .profile uživatelů jako alias mysql="/path/to/mysql".

Místo toho

Použil jsem export mysql=/path/to/mysql

A ve svém bash skriptu jsem použil $mysql.

Příklad

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



  1. Proměnná tabulky je vyplněna pouze jednou hodnotou

  2. Která metoda je lepší pro ověření přihlašovacích údajů uživatele?

  3. Běžný uživatel s oprávněním SYSBACKUP

  4. Jak splním omezení vynucování_srid_coordinate s GeoDjango/PostGIS?