जवाबों:
cat filename.sql | mysql -u username -p # type mysql password when asked for it
जहाँ filename.sql आपके डेटाबेस को बनाने के लिए सभी sql रखता है। या ...
echo "create database `database-name`" | mysql -u username -p
यदि आप वास्तव में केवल एक डेटाबेस बनाना चाहते हैं।
-u
मेरा मतलब है जब आप mysql पर्यावरण?
create database testdb;
या सीधे कमांड लाइन से:
mysql -u root -e "create database testdb";
यदि आप एक नया डेटाबेस बनाते हैं तो केवल इस डेटाबेस के लिए अनुमतियों के साथ उपयोगकर्ता बनाना अच्छा है (यदि कुछ भी गलत होता है तो आप रूट उपयोगकर्ता लॉगिन और पासवर्ड से समझौता नहीं करेंगे)। तो सब कुछ एक साथ इस तरह दिखेगा:
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'"
कहां:
base_user सभी विशेषाधिकारों के साथ उपयोगकर्ता के लिए नाम है (शायद रूट)
base_user_pass यह आधार_सुविधा के लिए पासवर्ड है (-p और base_user_pass के बीच स्थान की कमी महत्वपूर्ण है)
new_db नए बनाए गए डेटाबेस का नाम है
new_db_user पहुंच के साथ नए उपयोगकर्ता के लिए नाम है केवल new_db
new_db_user_pass के लिए यह new_db_user के लिए पासवर्ड है
-p"root password here"
ठीक काम करता है
Ist और 2nd उत्तर अच्छे हैं, लेकिन यदि कोई स्क्रिप्ट की तलाश में है या यदि आप डायनामिक चाहते हैं (db / यूज़रनेम / पासवर्ड चर में) तो यहाँ:
#!/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'";
आप कमांड लाइन पर SQL का उपयोग कर सकते हैं :
echo 'CREATE DATABASE dbname;' | mysql <...>
या आप उपयोग कर सकते हैं mysqladmin
:
mysqladmin create dbname
आधार उपयोगकर्ता का उपयोग कर DB से कनेक्ट करें:
mysql -u base_user -pbase_user_pass
और CREATE DATABASE, CREATE USER और GRANT PRIVILEGES स्टेटमेंट्स निष्पादित करें।
यहां www.bugaco.com/helpers/create_database.html कथनों के साथ मदद करने के लिए आसान वेब विज़ार्ड उपलब्ध है