2013-06-18 11 views
5

का उपयोग कर mysql में एक SQL डीबी आयात करना मैं ऐसा करने के लिए संघर्ष कर रहा हूं। somedb.sqlटर्मिनल

मैं कोशिश की है:

मैं टर्मिनल "somedb"

CREATE DATABASE somedb 

मेरे डेस्कटॉप पर का उपयोग कर रहा एसक्यूएल डंप phpMyAdmin से डाउनलोड किया है कहा जाता है में एक नया डेटाबेस बनाया है

somedb < /Users/myname/Desktop/somedb.sql 

परिणाम: त्रुटि 1064 (42000): आप अपने एसक्यूएल वाक्य रचना में एक त्रुटि है

mysql -u myname -p -h localhost somedb </Users/myname/Desktop/somedb.sql 

परिणाम: त्रुटि 1064 (42000): आपको अपने SQL वाक्यविन्यास में कोई त्रुटि है;

मैं एसक्यूएल के लिए नया हूँ (इस डाटाबेस आयात करने के प्रयोजन के एक पाठ्य पुस्तक व्यायाम के लिए है)

मैं अपने आप को सभी विशेषाधिकार प्रदान की है और वहाँ कोई पासवर्ड है।

कोई विचार क्या मैं गलत कर रहा हूं?

-- phpMyAdmin SQL Dump 
-- version 4.0.2 
-- http://www.phpmyadmin.net 
-- 
-- Host: localhost 
-- Generation Time: Jun 18, 2013 at 02:22 PM 
-- Server version: 5.5.31-30.3 
-- PHP Version: 5.2.17 

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8 */; 

-- 
-- Database: `somedb` 
-- 
CREATE DATABASE IF NOT EXISTS `somedb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 
USE `somedb`; 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `actions` 
-- 

CREATE TABLE IF NOT EXISTS `actions` (
    `action_id` int(11) NOT NULL AUTO_INCREMENT, 
    `action` varchar(75) NOT NULL, 
    `qualifiers` text NOT NULL, 
    `response` varchar(75) NOT NULL, 
    `response_vars` text NOT NULL, 
    `active` tinyint(4) NOT NULL, 
    PRIMARY KEY (`action_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Stores user defined actions triggered by certain events' AUTO_INCREMENT=3 ; 

-- -------------------------------------------------------- 

-- 

उत्तर

8

मैं एक बहुत here पोस्ट पाया:

यहाँ एसक्यूएल डंप फ़ाइल के शीर्ष है।

मैं "स्रोत" का इस्तेमाल किया तो जैसे:

SOURCE /Users/myname/Desktop/somedb.sql; 

यही काम किया। ग्रेट लेकिन इंटरनेट मुझे इतना की तरह विधि का उपयोग करना चाहते करने के लिए लग रहा था:

mysql -u username -p password databasename < filename.sql 

मैं एक एसक्यूएल डंप फ़ाइल से जब कि दूसरी विधि का उपयोग करने पर, लेकिन मैं सिर्फ इस्तेमाल किया स्रोत इस बीच में एक और सवाल पोस्ट कर सकते हैं

+0

क्या इंटरनेट के लिए पूछेंगे सुनिश्चित करें चाहता है कि इंटरनेट हो! ;-) – Wes

1

आप इस तरह से प्रयास कर सकते हैं ..

mysql प्रॉम्प्ट पर जाएं और फिर निम्न टाइप करें।

mysql> \. <path> /filename.sql 

के बीच का अंतर नोट करें। और एसक्यूएल फ़ाइल का पथ। यह काम करता है।

1

टर्मिनल

sudo mysql -p database_name < folder/database_dump_file.sql 

पर प्रकार यह यह तो mysql पासवर्ड

2

MAMP प्रो, "अपलोड" बनाया MAMP में निर्देशिका का उपयोग करने के लिए आप से पूछना है और वहाँ बुलाया "फ़ाइल में मेरी एसक्यूएल फ़ाइल डाल देंगे। एसक्यूएल "। टर्मिनल में नीचे दी गई क्वेरी को चलाएं और मेरे लिए काम करें।

के बाद "-u" या "-p"

/Applications/MAMP/Library/bin/mysql -u<username> -p<root> <db_name> < /Applications/MAMP/uploads/file.sql 
+0

सही उत्तर !!! अपलोड फ़ोल्डर बनाने की जरूरत नहीं है! हम स्थित फाइलों को टर्मिनल पर भी खींच सकते हैं! – SagarPPanchal

0
mysql -uUser -p --default-character-set=utf8 databasename < /<path to .sql> 

(-p) को रिक्तियों के कोष्ठक और और उपयोगकर्ता जानकारी को बदलने के लिए पासवर्ड