এসকিউএল ফাইলটি এসকিউএল-তে আমদানি করুন


191

আমার কাছে একটি ডাটাবেস আছে nitm। আমি সেখানে কোনও টেবিল তৈরি করি নি। তবে আমার কাছে একটি এসকিউএল ফাইল রয়েছে যা ডাটাবেসের জন্য প্রয়োজনীয় সমস্ত ডেটা ধারণ করে। ফাইলটি nitm.sqlযা আছে C:\ drive। এই ফাইলটির আকার প্রায় 103 এমবি। আমি wamp সার্ভার ব্যবহার করছি।

ফাইলটি আমদানি করার জন্য আমি মাইএসকিউএল কনসোলে নিম্নলিখিত বাক্য গঠন ব্যবহার করেছি:

mysql>c:/nitm.sql;

তবে এটি কার্যকর হয়নি।



উত্তর:


406

মাইএসকিএল কনসোল থেকে:

MySQL> use DATABASE_NAME;

MySQL> source path/to/file.sql;


নিশ্চিত করুন যে আপনি যদি কোনও আপেক্ষিক পথটির উল্লেখ করছেন তবে পথের আগে কোনও স্ল্যাশ নেই ... বুঝতে পেরে আমাকে কিছুটা সময় লেগেছিল! হাঃ হাঃ হাঃ


36
আপনি যদি কোনও আপেক্ষিক রেফারেন্স দিচ্ছেন তবে পাথের আগে আপনার কোনও স্ল্যাশ দরকার নেই। আপনি যদি মূল থেকে চলে যান তবে আপনি যাবেন/home/user/file.sql
ওয়েস জনসন

5
দুঃখের বিষয়
প্রিয়জনের

4
ক্রোমে তাদেরকে বুকমার্ক বলা হয়, এবং আপনি ঠিক ঠিকানা বারে
অ্যান্ড্রু

2
@ আরসেনিয়াসেজোজিকি প্রশ্নটি যুক্ত করুন এবং আপনি উত্তরটি পৌঁছাতে সক্ষম হবেন :) এটাই আমি করি।
মান্দজা

2
এই উত্তরটি যুক্ত করতে কেবল এটিই path/to/file.sqlহ'ল স্থানীয় ফাইল সিস্টেমের পথ যেখানে মাইএসকিএল ক্লায়েন্ট রয়েছে। এমন অনেক সময় আছে যখন মাইএসকিউএল সার্ভারটি সার্ভারের পাশের পথটি আশা করে, IE SELECT ... INTO OUTFILEযা মাইএসকিউএল সার্ভারের পথে ফাইলটি ফেলে দেয়!
ডেভী

90

অবশেষে, আমি সমস্যাটি সমাধান করেছি। আমি `nitm.sql` ফাইলটি` mysql` ফোল্ডারের `bin` ফাইলে রেখেছি এবং নিম্নলিখিত বাক্য গঠনটি ব্যবহার করেছি।

C:\wamp\bin\mysql\mysql5.0.51b\bin>mysql -u root nitm < nitm.sql

এবং এটি কাজ করে।


8
এটি ওএস যেমন জিজ্ঞাসা করেছে মাইএসকিএল কনসোল থেকে নয়, তবে মাইএসকিএলে কনসোল থেকে। রবার্ট অ্যান্টনি ট্রিবিয়ানার উত্তর মাইএসকিএল কনসোল থেকে কীভাবে এটি করবে তা বর্ণনা করে describe
হাফপাস্টফোর.কম

সমস্যাটি সমাধানের এটি সঠিক উপায় নয়, এটি কোনও সমাধান নয়।
আশীষ রতন

4
আপনারা জানেন যে এই ওপি কে এই উত্তর দিয়েছিল?
ওয়েজ

যদি আপনার মাইএসকিএল একটি পাসওয়ার্ডের প্রয়োজন হয়, তবে পদ্ধতিটি কার্যকর হবে না, আপনার @d -_- বি এর শীর্ষ উত্তরটি প্রয়োজন
শেলবাই

52

আপনি যদি wamp ব্যবহার করেন তবে আপনি এটি ব্যবহার করে দেখতে পারেন। শুধু use your_Database_nameপ্রথমে টাইপ করুন ।

  1. আপনার ওয়্যাম্প সার্ভার আইকনে ক্লিক করুন এবং MYSQL > MSQL Consoleতারপরে এটি চালান।

  2. আপনার যদি পাসওয়ার্ড না থাকে তবে কেবল এন্টার টিপুন এবং টাইপ করুন:

    mysql> use database_name;
    mysql> source location_of_your_file;

    আপনার যদি পাসওয়ার্ড থাকে তবে আপনি একটি পাসওয়ার্ড দেওয়ার জন্য অনুরোধ করবেন। প্রথমে আপনার পাসওয়ার্ড লিখুন টাইপ করুন:

    mysql> use database_name;
    mysql> source location_of_your_file;

location_of_your_file মত চেহারা উচিত C:\mydb.sql

সুতরাং প্রশংসাটি mysql> উত্স সি: \ mydb.sql;

বিগ এসকিউএল ফাইলের জন্য এই জাতীয় এসকিএল ডাম্প আমদানি করা খুব সহায়ক।

আমি আমার ফাইলটি mydb.sqডিরেক্টরিতে অনুলিপি করেছি I C:এটি চালানোর জন্য মূলধন সি হওয়া উচিত

এবং এটাই.


1
এই উত্তরটি ডাব্লুএএমপি সুনির্দিষ্ট বলে মনে হচ্ছে যখন দেখানো কোডটি মাইএসকিউএল চালিত কোনও পরিবেশ থেকে কাজ করে যেখানে আপনি টার্মিনাল বা কনসোলের মাধ্যমে মাইএসকিউএল অ্যাক্সেস করতে পারবেন।
হাফপাস্টফোর.কম

26

উইন্ডোজগুলিতে, যদি উপরের পরামর্শটি আপনাকে একটি ত্রুটি দেয় (ফাইলটি পাওয়া যায় নি বা অজানা ডিবি) আপনি ফরোয়ার্ড স্ল্যাশগুলি দ্বিগুণ করতে চাইতে পারেন:

মাইএসকিএল কনসোলে:

mysql> use DATABASE_NAME;

mysql> source C://path//to//file.sql;

1
সিঙ্গল ফরোয়ার্ড স্ল্যাশ আমার উইন্ডোজ মেশিনে আমার জন্য কাজ করেছিল।
মনোজ শ্রেষ্ঠ

17

ঠিক আছে, আমি লিনাক্স ব্যবহার করছি তবে আমি মনে করি এটি উইন্ডোজের ক্ষেত্রেও সত্য। আপনি কমান্ড প্রম্পট থেকে সরাসরি এটি করতে পারেন

> mysql -u <user name> -p<password> <database name> < sqlfilename.sql

অথবা মাইএসকিএল প্রম্পটের মধ্যে থেকে আপনি ব্যবহার করতে পারেন:

mysql>source sqlfilename.sql

তবে এই উভয় পদ্ধতিরই তারা প্রদর্শিত ফলাফলগুলিতে নিজস্ব সুবিধা রয়েছে। প্রথম পন্থায় স্ক্রিপ্টটি ত্রুটির সাথে সাথেই উপস্থিত হয়। এবং আরও ভাল অংশটি হ'ল এটি আপনাকে উত্স ফাইলে যেখানে ত্রুটি ঘটেছে তার সঠিক লাইন নম্বরটি বলে tells তবে এটি কেবল ত্রুটি প্রদর্শন করে। যদি এটি কোনও ত্রুটির সম্মুখীন না হয় তবে স্ক্রিপ্টগুলি কিছুই দেখায় না disp যা কিছুটা আপত্তিহীন হতে পারে। কারণ আপনি প্রায়শই পুরো কমান্ডের পুরো গাদা দিয়ে স্ক্রিপ্ট চালাচ্ছেন।

এখন দ্বিতীয় পদ্ধতির (মাইএসকিএল প্রম্পটের মধ্যে থেকে) সুবিধা রয়েছে যে এটি স্ক্রিপ্টে প্রতিটি মাইএসকিউএল কমান্ডের জন্য একটি বার্তা প্রদর্শন করে। যদি এটির ত্রুটির মুখোমুখি হয় তবে এটি মাইএসকিএল ত্রুটি বার্তা প্রদর্শন করে তবে স্ক্রিপ্টগুলির মাধ্যমে অবিরত থাকে। এটি ভাল হতে পারে, কারণ আপনি আবার স্ক্রিপ্টটি চালানোর আগে আপনি ফিরে গিয়ে সমস্ত ত্রুটিগুলি ঠিক করতে পারেন। ক্ষতিটি হ'ল এটি স্ক্রিপ্টে লাইন নম্বরগুলি প্রদর্শন করে না যেখানে ত্রুটিগুলির সম্মুখীন হয়েছিল। এটি কিছুটা ব্যথা হতে পারে। ত্রুটি বার্তাগুলি বর্ণনামূলক তাই আপনি সম্ভবত সমস্যাটি কোথায় তা বুঝতে পারবেন।

আমি একের জন্য সরাসরি ওএস-কমান্ড লাইন পদ্ধতির পছন্দ করি।



7

আপনি প্রায় সেখানে ব্যবহার

mysql> \. c:/nitm.sql;

আপনি দ্বারা সাহায্য অ্যাক্সেস করতে পারেন

mysql> \?

1
এটি কাজ করে না। আমি যখন mysql> used ব্যবহার করি \ C: /nitm.sql; , এটি 'সি: it নিতম.এসকিএল;' ফাইল খুলতে ব্যর্থ হওয়ার মতো ত্রুটি ছুঁড়েছিল, ত্রুটি: 2
কুশলভক্তজোশি

আপনি কি এর বিভিন্নতা চেষ্টা করেছেন? কিছু অ্যাপ্লিকেশন সি: \ nitm.sql
লামওয়ানগি

এছাড়াও লক্ষ করুন শেষে সেমিকোলন প্রয়োজন হয় না। সুতরাং এটি সরান। আর একটি বিকল্প হল 'সিডি সি:' তারপরে "n। Nitm.sql"
Lmwangi

1
আপনি টাইপ করার আগে দয়া করে চিন্তা করুন। 'সিডি সি:' ডস প্রম্পটের জন্য কমান্ড নয় মাইএসকিএল কনসোল।
কুশলভক্তজোশি

1
mysql> \. ~/Downloads/backups/file.sql mysql> এর মধ্যে পুরোপুরি কাজ করে এবং টার্মিনাল coosalউত্তর থেকেও কাজ করে।
gmhm

6

এক্সএএমপিপি-তে লোকালহোস্টের জন্য। একটি সেন্টিমিডি উইন্ডোটি খুলুন এবং টাইপ করুন

cd C:\xampp\mysql\bin
mysql.exe -u root -p

মনোযোগ! -P এর পরে কোনও আধা-কোলন নেই আপনার পাসওয়ার্ডটি লিখুন এবং টাইপ করুন

use database_name;

আপনার প্রয়োজন ডাটাবেস নির্বাচন করতে।

আপনার টেবিলটি আছে কিনা তা পরীক্ষা করে দেখুন

show tables;

আপনার এসকিএল ফাইল থেকে আমদানি করুন

source sqlfile.sql;

এসকিউএল ফাইলের অবস্থানের সাথে মিশে না যাওয়ার জন্য আমি সি: am xampp \ mysql \ বিন অবস্থানটিতে আমার ফাইলটি রেখেছি।



3

ব্যবহার করতে ভুলবেন না

charset utf8

যদি আপনার এসকিএল ফাইলটি utf-8 এ থাকে তবে :)

সুতরাং আপনার এটি করা দরকার:

cmd.exe

mysql -u মূল

mysql> চরসেট utf8

mysql> mydbname ব্যবহার করুন

mysql> উত্স সি: \ মাইফোল্ডার \ myfile.sql l

শুভকামনা))


3

লিনাক্সে আমি mysql শুরু করার আগে .sQL ফাইল যুক্ত ডিরেক্টরিতে নেভিগেট করেছি। সিস্টেমের কার্সারটি এখন ফাইলের মতো একই স্থানে রয়েছে এবং আপনার কোনও পাথের প্রয়োজন হবে না। সোর্স myData.sql ব্যবহার করুন যেখানে আমার তারিখটি আপনার ফাইলের নামের সাথে প্রতিস্থাপন করা হবে।

cd whatever directory

mysql - p

টার্গেটডিবি সংযুক্ত করুন

source myData.sql

সম্পন্ন


2

কমান্ড লাইন থেকে (cmd.exe, মাইএসকিএল শেলের মধ্যে নয়) এর মতো কিছু চেষ্টা করুন:

type c:/nite.sql | mysql -uuser -ppassword dbname

আমি ডাটাবেসের জন্য কোনও পাসওয়ার্ড তৈরি করি নি তাই এটি পাসওয়ার্ড ক্ষেত্রে ফাঁকা। এবং আমি উপরের সিনট্যাক্সটিকে এই সি: /nitm.sql | এর মতো ব্যবহার করেছি mysql -u root -p nitm কিন্তু এটি কাজ করে না। আপনি এই আরও কিছু সাহায্য করতে পারেন?
কুশলভক্তজোশি

ছাড়াই-পিও তেমন কাজ করে না। এটি 'সি:' এর মতো ত্রুটিটি আভ্যন্তরীণ বা বাহ্যিক কমান্ড, অপারেবল প্রোগ্রাম বা ব্যাচ ফাইল হিসাবে স্বীকৃত নয়।
কুশলভক্তজোশি

2

আপনার ডাম্পে এমন বৈশিষ্ট্য রয়েছে যা মাইএসকিউএল এর সংস্করণে সমর্থিত নয়? আপনি মাইএসকিউএল মন্তব্য করা SET- বিবৃতি শুরু (এবং শেষ) অপসারণ করতে চেষ্টা করতে পারেন।

আমি জানি না আপনার ডাম্প মাইএসকিউএল (লাইন শেষ) এর লিনাক্স সংস্করণ থেকে এসেছে কিনা?


আমি ইতিমধ্যে মাইএসকিএল মন্তব্য SET- বিবৃতি মুছে ফেলেছি। তবু ত্রুটি ঘটে।
কুশলভক্তজোশি

আপনি মাইএসকিউএল কমান্ড শেল এবং তারপরে বিবৃতিটি ব্যবহার করতে চেষ্টা করতে পারেন: "উত্স সি: ite nite.sql"। সঠিক ডাটাবেস নির্বাচন করতে ভুলবেন না।
মাইকেল

আমি আপনার প্রচেষ্টার সত্যই প্রশংসা করি ধন্যবাদ।
কুশলভক্তজোশি

2

আমি আমার ওয়্যাম্প সার্ভারটি ডি-তে ইনস্টল করেছি: ড্রাইভ করুন যাতে আপনার ইউআর কমান্ড লাইন -> থেকে নীচের পথে যেতে হবে - (এবং আপনি যদি সিটিতে ইউআর ওয়্যাম্প ইনস্টল করেছেন তবে ড্রাইভটি কেবল d: wtih c: এখানে প্রতিস্থাপন করুন)

D:\>cd wamp
D:\wamp>cd bin
D:\wamp\bin>cd mysql
D:\wamp\bin\mysql>cd mysql5.5.8 (whatever ur verserion will be displayed here use keyboard Tab button)
D:\wamp\bin\mysql\mysql5.5.8>cd bin
D:\wamp\bin\mysql\mysql5.5.8\bin>mysql -u root -p password db_name < "d:\backupfile.sql"

এখানে রুটটি আমার পিএইচপিএমইডমিনের পাসওয়ার্ড হ'ল পিএইচপিএমইডমিনের পাসওয়ার্ড তাই আপনি যদি সেই জায়গায় রুটের জন্য কোনও পাসওয়ার্ড সেট না করে থাকেন তবে ডিবি_নেম হল ডাটাবেস (যার জন্য ডাটাবেসটি আপনার ব্যাকআপ নেবে), ব্যাকআপফাইল.এসকিউএল যে ফাইল থেকে আপনি আপনার ডাটাবেসের আপনার ব্যাকআপ চান এবং যে ফাইলটি আপনার কম্পিউটারের অন্য যে কোনও জায়গায় থেকে ব্যাকআপ ফাইলের অবস্থান (d: \ ব্যাকআপফাইল.এসকিউএল) পরিবর্তন করতে পারে file


1
mysql>c:/nitm.sql;

এটি mysql কমান্ডের আউটপুট 'nitm.sql' তে লিখবে; (';' করণীয় কি?) ধরে নিলে আপনি মূল ফাইলটির একটি অনুলিপি পেয়েছেন (আপনি ওভাররোট করার আগে) তারপরে:

mysql < c:/nitm.sql

এটিও কাজ করে না। এটি ERROR 1064 <42000> এর মতো ত্রুটি ফেলেছিল: আপনার এসকিউএল সিন্টেক্সে আপনার একটি ত্রুটি রয়েছে; ডান সিনট্যাক্সের জন্য 'মাইএসকিএল <সি: /nitm.sql' এর কাছাকাছি লাইন 1
কুশলভক্তজোশি

1

বিশেষ ডাটাবেস রফতানি করুন

 djimi:> mysqldump --user=root --host=localhost --port=3306 --password=test -B CCR KIT >ccr_kit_local.sql

এটি সিসিআর এবং কেআইটি ডাটাবেস রফতানি করবে ...

সমস্ত রফতানি ডিবি বিশেষ মাইএসকিএল ইনস্ট্যান্সে আমদানি করুন (আপনার ডাম্প ফাইলটি যেখানে আপনাকে থাকতে হবে)

djimi:> mysql --user=root --host=localhost --port=3306 --password=test < ccr_kit_local.sql

0

উইন্ডোজ ওএসে নিম্নলিখিত কমান্ডগুলি আমার পক্ষে কাজ করে।

mysql>Use <DatabaseName>
mysql>SOURCE C:/data/ScriptFile.sql;

ফাইলের নামের চারপাশে কোনও একক উদ্ধৃতি বা ডাবল উদ্ধৃতি নেই। পাথটিতে '/' এর পরিবর্তে '/' থাকবে।


0

আপনারা যারা এই চেষ্টা করে যাচ্ছেন তার জন্য প্রতিটি সম্ভাব্য উত্তরের চেষ্টা করেও আপনি এসও-তে খুঁজে পেতে পারেন। উইন্ডোজ 2012 আর 2 চালিত ভিপিএসে আমার জন্য কী কাজ করেছে তা এখানে:

  1. আপনার স্কয়ার ফাইলটি যেখানেই আমার জন্য বিন যেখানে রয়েছে সেখানে রাখুন C:\Program Files\MySQL\MySQL Server 8.0\bin

  2. উইন্ডোজ কমান্ড প্রম্পট (সেন্টিমিটার) খুলুন

  3. চালান C:\Program Files\MySQL\MySQL Server 8.0\bin > mysql -u [username] -p
  4. আপনার পাসওয়ার্ড লিখুন
  5. কমান্ড চালান use [database_name];
  6. কমান্ড উত্স সহ আপনার ফাইলটি আমদানি করুন C://Program Files//MySQL//MySQL Server 8.0//bin//mydatabasename.sql

এটি আমার জন্য এটি করেছিল কারণ সমস্ত কিছু ব্যর্থ হয়েছিল। এটি আপনাকেও সাহায্য করতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.