Jawaban:
cat filename.sql | mysql -u username -p # type mysql password when asked for it
Di mana filename.sql menampung semua sql untuk membuat database Anda. Atau...
echo "create database `database-name`" | mysql -u username -p
Jika Anda benar-benar hanya ingin membuat database.
-u
bendera
Maksudmu sementara lingkungan mysql?
create database testdb;
Atau langsung dari baris perintah:
mysql -u root -e "create database testdb";
Jika Anda membuat basis data baru, sebaiknya buat pengguna dengan izin hanya untuk basis data ini (jika terjadi kesalahan, Anda tidak akan kompromi login dan kata sandi pengguna root). Jadi semuanya akan terlihat seperti ini:
mysql -u base_user -pbase_user_pass -e "create database new_db; GRANT ALL PRIVILEGES ON new_db.* TO new_db_user@localhost IDENTIFIED BY 'new_db_user_pass'"
Di mana:
base_user adalah nama untuk pengguna dengan semua hak istimewa (mungkin root)
base_user_pass itu adalah kata sandi untuk base_user (kurangnya ruang antara -p dan base_user_pass penting)
new_db adalah nama untuk database yang baru dibuat
new_db_user adalah nama untuk pengguna baru dengan akses hanya untuk new_db
new_db_user_pass itu adalah kata sandi untuk new_db_user
-p"root password here"
berfungsi dengan baik
mysqladmin -u$USER -p$PASSWORD create $DB_NAME
Ganti variabel di atas dan Anda siap menggunakan oneliner ini. $ USER adalah nama pengguna, $ PASSWORD adalah kata sandi dan $ DB_NAME adalah nama database.
Jawaban ist dan 2 bagus tetapi jika ada yang mencari skrip atau Jika Anda ingin dinamis yaitu (db / nama pengguna / kata sandi dalam variabel) maka di sini:
#!/bin/bash
DB="mydb"
USER="user1"
PASS="pass_bla"
mysql -uroot -prootpassword -e "CREATE DATABASE $DB CHARACTER SET utf8 COLLATE utf8_general_ci";
mysql -uroot -prootpassword -e "CREATE USER $USER@'127.0.0.1' IDENTIFIED BY '$PASS'";
mysql -uroot -prootpassword -e "GRANT SELECT, INSERT, UPDATE ON $DB.* TO '$USER'@'127.0.0.1'";
Anda dapat menggunakan SQL di baris perintah:
echo 'CREATE DATABASE dbname;' | mysql <...>
Atau Anda dapat menggunakan mysqladmin
:
mysqladmin create dbname
Terhubung ke DB menggunakan pengguna basis:
mysql -u base_user -pbase_user_pass
Dan jalankan CREATE DATABASE, CREATE USER, dan GRANT PRIVILEGES.
Ini panduan web praktis untuk membantu Anda dengan pernyataan www.bugaco.com/helpers/create_database.html