আমি মাইএসকিউএল কমান্ড লাইন ব্যবহার করে কীভাবে একটি এসকিউএল ফাইল আমদানি করব?


2030

আমার কাছে .sqlরফতানি সহ একটি ফাইল রয়েছে phpMyAdmin। কমান্ড লাইনটি ব্যবহার করে এটি অন্য একটি সার্ভারে আমদানি করতে চাই।

আমার একটি উইন্ডোজ সার্ভার 2008 আর 2 ইনস্টলেশন রয়েছে। আমি .sqlফাইলটি সি ড্রাইভে রেখেছি এবং আমি এই আদেশটি চেষ্টা করেছি

database_name < file.sql

এটা কাজ করছে না. আমি সিনট্যাক্স ত্রুটি পেয়েছি।

  • কোনও সমস্যা ছাড়াই আমি কীভাবে এই ফাইলটি আমদানি করতে পারি?
  • আমার কি প্রথমে ডেটাবেস তৈরি করা দরকার?


2
সম্ভাব্য সদৃশ stackoverflow.com/questions/11407349/...
AZinkey

7
এই সদৃশ ছেলেদের সাথে কি? এটি সত্যই তার নিজস্ব উদ্দেশ্য সহ একটি সহায়ক প্রশ্ন
ভ্যালেন্টিনো পেরেইরা

@ ভ্যালেন্টিনোপিয়েরা নকল লোক নির্ধারণ করার আগে আপনি কি আসল প্রশ্নের তারিখগুলি পরীক্ষা করে
দেখেছেন

আপনি একটি প্রজননযোগ্য উদাহরণ ভাগ করতে পারেন? database < file.sqlআমার কাছে কোনও আদেশের মতো মনে হচ্ছে না এবং যদি আপনি কিছু বাক্য গঠন ত্রুটি দেখতে পান তবে দয়া করে সেগুলি ভাগ করুন
নিকো হায়েস

উত্তর:


3767

চেষ্টা করুন:

mysql -u username -p database_name < file.sql

মাইএসকিউএল বিকল্পগুলি পরীক্ষা করুন ।

নোট -1: এটা এসকিউএল ফাইলের সম্পূর্ণ পাথ ব্যবহার করা ভাল file.sql

নোট -২: আসল ডাটাবেসের রুটিন এবং ট্রিগারগুলি ব্যবহার -Rএবং --triggersরাখার জন্য। সেগুলি ডিফল্টরূপে অনুলিপি করা হয় না।

নোট -3 আপনার ইম্পোর্ট করার আগে আপনাকে মাইএসকিএল থেকে (খালি) ডাটাবেস তৈরি করতে হতে পারে যদি এটি ইতিমধ্যে বিদ্যমান না থাকে এবং রফতানি হওয়া এসকিউএলটি CREATE DATABASE(এর সাথে রফতানি --no-create-dbবা -nবিকল্প) না থাকে ।


2
টোডের মতো প্রোগ্রাম থেকে ফাইলটি চালানোর সময় আমি কোনও ত্রুটি পাই না তবে কমান্ড লাইনটি চালানোর সময় আমি যে ত্রুটিটি উল্লেখ করেছি তা পেয়ে যাই
জেইলেন

110
মনে রাখবেন যে হ্যাঁ, আপনাকে আমদানি করার আগে আপনাকে মাইএসকিএল থেকে (খালি) ডাটাবেস তৈরি করতে হবে যদি এটি ইতিমধ্যে উপস্থিত না থাকে।
স্কিপি লে গ্র্যান্ড গৌরও

17
হ্যাঁ, মাইএসকিউএল কনসোল থেকে একটি ফাঁকা ডাটাবেস (যদি ডিবি আগে উপস্থিত না থাকে) তৈরি করতে মনে রাখবেন:CREATE DATABASE db-name;
কাসিম

3
নিশ্চিত হয়ে নিন যে ব্যাকআপ ফাইলে এটিতে "original_db" ব্যবহার নেই। যদিও আমি নতুন ডিবি "মাইএসকিএল নতুন_ডিবি <ডাম্প। এসকিএল" তে পুনরুদ্ধার সুনির্দিষ্টভাবে উল্লেখ করেছি, এসকিউএল ডাম্প ফাইলটি এতে ছিল এবং এটি আমার লাইভ ডিবি ওভাররোট করে। নির্দিষ্ট ডিবি ব্যবহারের জন্য এটি বাধ্য করার কোনও বিকল্প আছে কিনা তা নিশ্চিত না এবং স্কয়ার ফাইলটিতে "'original_db'" উপেক্ষা করা
শাকির

7
@ জো, হ্যাঁ, আপনার যদি '-p' এবং 'পাসওয়ার্ড' এর মধ্যে একটি স্থান থাকে তবে এটি মনে করে যে 'পাসওয়ার্ড' ডাটাবেসের নাম। বিকল্পভাবে, আপনি আপনার পাসওয়ার্ড ছাড়াই '-p' টাইপ করতে পারেন এবং তারপরে আপনি প্রবেশের সময় হিট করার সময় আপনাকে একটি পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে।
নটজে

763

মাইএসকিএলডাম্পের একটি সাধারণ ব্যবহার একটি সম্পূর্ণ ডাটাবেসের ব্যাকআপ তৈরি করার জন্য:

shell> mysqldump db_name > backup-file.sql

আপনি ডাম্প ফাইলটি আবার সার্ভারে লোড করতে পারেন:

ইউনিক্স

shell> mysql db_name < backup-file.sql

উইন্ডোজ কমান্ড প্রম্পটে একই :

mysql -p -u [user] [database] < backup-file.sql

শক্তির উৎস

C:\> cmd.exe /c "mysql -u root -p db_name < backup-file.sql"

মাইএসকিউএল কমান্ড লাইন

mysql> use db_name;
mysql> source backup-file.sql;

@ মাইক আপনি কি mysql>কমান্ড লাইনে এটি চালু করার চেষ্টা করছেন ? পরিবর্তে আপনার শেল ব্যবহার করা উচিত।
ভ্লাদক্রাস

আমি কীভাবে শেল ব্যবহার করব? আমি উইন্ডোজ সার্ভার ২০০৮
জেইলেন

উইন্ডোজ পাওয়ারশেল টাইপিং মাইএসকিউএল db_name <file.sql ব্যবহার করে নীচের ত্রুটিটি পেয়েছি '<' অপারেটর ভবিষ্যতের ব্যবহার সংরক্ষিত
জেইলেন

31
কোনও ফাইলকে মাইএসকিল্ডাম্প আউটপুট পুনঃনির্দেশ করতে> ব্যবহার করার বিষয়ে সতর্ক হন, বিশেষত যদি আপনি এনকোডিংয়ের উপরে নিয়ন্ত্রণ চান। পরিবর্তে, আপনি সম্ভবত --result-file প্যারামিটারটি ব্যবহার করতে চান যাতে এনকোডিংটি শেল / ওএস দ্বারা নিয়ন্ত্রিত না হয়।
বার্নার্ড চেন

1
ঠিক আছে, তবে ... কেন কেবল mysqlপাওয়ারশেল থেকে সোজা চালাবেন না ?
চার্লস উড

328

বিশাল ফাইল আমদানির জন্য নেওয়া সময় সম্পর্কে: সবচেয়ে গুরুত্বপূর্ণ, মাইএসকিউএল-এর ডিফল্ট সেটিং হওয়ায় এটি আরও বেশি সময় নেয় autocommit = true। আপনার ফাইলটি আমদানির আগে আপনাকে অবশ্যই তা সেট করে রাখতে হবে এবং তারপরে আমদানি কীভাবে রত্নের মতো কাজ করে তা পরীক্ষা করে দেখুন।

আপনার কেবল নিম্নলিখিত জিনিসটি করা দরকার:

mysql> use db_name;

mysql> SET autocommit=0 ; source the_sql_file.sql ; COMMIT ;

5
আমদানির জন্য ব্যবহৃত মাইএসকিএল কমান্ডের একক কমান্ড লাইনে এটি করার কোনও উপায় আছে কি?
ভলমিকে

সেরা উত্তর inho। sourceআমি যে আদেশটি ভুলে গিয়েছিলাম তা ছিল। আমাদের অধিকাংশ আমরা যখন এই কাজ করতে চান হয় অন্যান্য কমান্ডের মধ্যে স্বতন্ত্র কমান্ড না মান লগইন হিসাবে লগ ইন> উদ্বুদ্ধ> লগ-আউট oneliner গুগল SERPs উপরের পারে।
ডেভিডকনরাদ

19
আমি সম্মত যে এটিই সেরা উত্তরautocommit=0অংশ গতি পরিপ্রেক্ষিতে পার্থক্য একটি বিশ্ব প্রণীত।
এক্সেল

2
হবে autocommit=0বড় ফাইল কাজ করবে? 8 জিবি স্কয়ার ফাইল হিসাবে।
নবাগত

3
এটি বন্ধ করা সবসময় প্রয়োজন হয় না autocommit। এটি একটি সম্পাদকীয়তে ডাটাবেস ডাম্প যাচাইয়ের জন্য এটি ইতিমধ্যে শুরু হতে পারে SET autocommit=0;
হ্যাশচেঞ্জ


74

কমান্ড লাইন থেকে এসকিউএল আমদানি করার জন্য আমরা এই কমান্ডটি ব্যবহার করতে পারি:

mysql -u username -p password db_name < file.sql

উদাহরণস্বরূপ, যদি ব্যবহারকারীর নাম rootএবং পাসওয়ার্ড হয় password। এবং আপনার ডাটাবেসের নাম যেমন আছে bankএবং এসকিউএল ফাইলটি bank.sql। তারপরে, সহজভাবে এটি করুন:

mysql -u root -p password bank < bank.sql

আপনার এসকিউএল ফাইলটি কোথায় রয়েছে তা মনে রাখবেন। যদি আপনার এসকিউএল ফাইলটি Desktopফোল্ডার / ডিরেক্টরিতে থাকে তবে ডেস্কটপ ডিরেক্টরিতে যান এবং কমান্ডটি এভাবে লিখুন:

~ ? cd Desktop
~/Desktop ? mysql -u root -p password bank < bank.sql

এবং যদি আপনি Projectডিরেক্টরিতে থাকেন এবং আপনার এসকিউএল ফাইল Desktopডিরেক্টরিতে থাকে। আপনি যদি Projectডিরেক্টরি থেকে এটি অ্যাক্সেস করতে চান তবে আপনি এটি করতে পারেন:

~/Project ? mysql -u root -p password bank < ~/Desktop/bank.sql

22
একটা মধ্যে স্থান থাকা উচিত নয় -pএবংpassword
এজাজ

জাপ। এটি কাজ করবে না। সঠিক হবেmysql -u root -p"password" bank < bank.sql
আর্মিন

4
আপনি কেন এক লাইনে উত্তর দিতে পারবেন না? mysql -u username -ppassword db_name < file.sql
নাভিদ

6
এটি যখন এই প্রশ্ন / উত্তরের সাথে সম্পূর্ণ সম্পর্কিত নয়, যখন আপনি অ-তুচ্ছ ডেটাবেসগুলির সাথে কাজ করছেন, তখন সরল পাঠ্যে একই কমান্ডে পাসওয়ার্ডটি প্রবেশ না করা পছন্দ করুন। কমান্ডের অংশ হিসাবে পাসওয়ার্ড উল্লেখ না করা আপনাকে পাসওয়ার্ডের জন্য অনুরোধ করবে যা আপনি নিরাপদে প্রবেশ করতে পারেন
asgs

3
বিশেষত কারণ.bash_history
নীল চৌধুরী

64

আপনার স্কিমাতে আমদানির সহজ উপায়:

Mysql এ লগইন করুন এবং নীচে উল্লেখ আদেশগুলি ইস্যু করুন।

mysql> use your_db_name;

mysql> source /opt/file.sql;

5
এতে মাল্টিপ্প ডিবি সহ ডাম্পের জন্য 'ব্যবহার' কমান্ড ছাড়াই এটি কাজ করবে
থ্রিং

1
আমি একটি ভিন্ন নামের সাথে একটি ডেটাবেস থেকে একটি ডাম্প আমদানির চেষ্টা করছিলাম তবে একই কাঠামোর সাথে লেখকের সঠিক উত্তরটি কার্যকর হয়নি, এটি ডাম্প ফাইলে ডাটাবেসের নামে একটি নতুন ডাটাবেস তৈরি করেছে। এই উত্তরটি এই
মুহুর্তে

1
মহান! আমি কি সন্ধান করছিলাম!
সের্গেই জাহাহেরেনকো

2
এটি স্ক্রিপ্টের প্রয়োগের উপর নজর রাখে, অন্যান্য উত্তরের চেয়ে অনেক ভাল
রেফেক্স

61

আপনার যদি ইতিমধ্যে ডাটাবেস থাকে dumpতবে sqlফাইলটি আমদানি করতে নিম্নলিখিত ব্যবহার করুন:

mysql -u username -p database_name < file.sql

আপনার যদি মাইএসকিউএলে প্রাসঙ্গিক ডাটাবেস (খালি) তৈরি করার প্রয়োজন না হয় তবে তার জন্য প্রথম MySQLটার্মিনালে বা সেমিডিতে নিম্নলিখিত কমান্ডটি চালিয়ে কনসোলে লগইন করুন

mysql -u userName -p;

এবং অনুরোধ জানানো হলে পাসওয়ার্ড সরবরাহ করুন।

এর পরে, একটি ডাটাবেস তৈরি করুন এবং এটি ব্যবহার করুন:

mysql>create database yourDatabaseName;
mysql>use yourDatabaseName;

তারপরে ডাটাবেসে ফাইল sqlবা dumpফাইলটি আমদানি করুন

mysql> source pathToYourSQLFile;

দ্রষ্টব্য: যদি আপনার টার্মিনালটি সেই স্থানে না থাকে যেখানে ফাইল dumpবা sqlফাইল বিদ্যমান থাকে তবে উপরের ক্ষেত্রে আপেক্ষিক পথটি ব্যবহার করুন।


আপনার উত্তরের আমার মতো মাইএসকিউএল প্রবর্তকদের জন্য একটি গ্রাউন্ড-আপ সমাধান ছিল: 1.ডেটাবেস তৈরি করুন, যদি এটির অস্তিত্ব না থাকে। 2.ডেটা / মেটা-ডেটা আমদানি করার জন্য উত্স ফাইলটি তৈরি করা ডেটাবেসকে নির্দেশ করুন।
সুমন্ত লাজারাস

60
  1. মাইএসকিউএল কমান্ড লাইনটি খুলুন
  2. আপনার মাইএসকিএল বিন ডিরেক্টরিটির পথটি টাইপ করুন এবং টিপুন Enter
  3. আপনার এসকিউএল ফাইলটি binমাইএসকিএল সার্ভারের ফোল্ডারের ভিতরে আটকান ।
  4. মাইএসকিউএলে একটি ডাটাবেস তৈরি করুন।
  5. আপনি যেখানে এসকিউএল ফাইলটি আমদানি করতে চান সেই নির্দিষ্ট ডাটাবেসটি ব্যবহার করুন।
  6. টাইপ source databasefilename.sqlএবংEnter
  7. আপনার এসকিউএল ফাইলটি সফলভাবে আপলোড হয়েছে।

2
আপনার মাইএসকিএল বিন ডিরেক্টরিটির পথটি চাপুন এবং টিপুন
রমেশ পরিক

46

আমার জন্য কাজ করা একটি সমাধান নীচে:

Use your_database_name;
SOURCE path_to_db_sql_file_on_your_local;

এটি আমার / এসকিউএল ফাইলটি সঠিক / বিন ডিরেক্টরি প্রদর্শনের উইন্ডো এক্সপ্লোরারে রাখার পরে, মাইএসকিউএল কমান্ড লাইন ক্লায়েন্ট ব্যবহার করে আমার পক্ষে কাজ করেছিল। ধন্যবাদ
ক্লিভিস

3
সামান্য ধীর কিন্তু এর মধ্যে থামবে না এবং মাইএসকিউএল সার্ভার চলে গেছে বলে না।
জস্করণ সিং

39

একটি এসকিউএল ফাইলের মধ্যে একটি ডাটাবেস ডাম্প করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

mysqldump -u username -p database_name > database_name.sql

একটি ডাটাবেসে একটি এসকিউএল ফাইল আমদানি করতে (আপনি এসকিউএল ফাইলের মতো একই ডিরেক্টরিতে রয়েছেন বা ফাইলটির পুরো পথ সরবরাহ করছেন তা নিশ্চিত করুন), করুন:

mysql -u username -p database_name < database_name.sql

37

যে ডিরেক্টরিতে আপনার মাইএসকিউএল এক্সিকিউটেবল থাকে সেখানে যান। -uব্যবহারকারীর নাম এবং -pপাসওয়ার্ডের জন্য অনুরোধ জানাতে:

C:\xampp\mysql\bin>mysql -u username -ppassword databasename < C:\file.sql

5
আমি মনে করি এটি ওপি এবং আরও প্রশ্নের জন্য আরও সহায়ক হবে যখন আপনি নিজের ঘনিষ্ঠতায় কিছু ব্যাখ্যা যোগ করেন।
রিপোর্টার

এটি তখনই কাজ করবে যদি আপনার উইন্ডোজ এনভায়রনমেন্ট ভেরিয়েবলগুলিতে mysql.exe সংজ্ঞায়িত করা হয়। যদি তা না হয় তবে আপনাকে mysql.exe ফাইলটির সমস্ত পথ টাইপ করা উচিত। এবং আপনার সিনট্যাক্সটি ভুল। উদাহরণস্বরূপ: "d: amp wamp \ bin \ mysql \ mysql5.5.8 \ bin \ mysql.exe -u YOUR_USERNAME -p DB_NAME <FILENAME.SQL" এখানে আরও তথ্য: wpy.me/en/blog/…
ওয়েপি

31

আমি মনে করি এটি উল্লেখ করার মতো যে আপনি নীচে দেখানো মত একটি জিজেপড (সংকুচিত) ফাইলও লোড করতে পারেন zcat:

zcat database_file.sql.gz | mysql -u username -p -h localhost database_name

28

একটি একক ডাটাবেস আমদানি করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

mysql -u username -p password dbname < dump.sql

একাধিক ডাটাবেস ডাম্প আমদানি করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

mysql -u username -p password < dump.sql


17

একসাথে একাধিক এসকিউএল ফাইল আমদানির জন্য, এটি ব্যবহার করুন:

# Unix-based solution
for i in *.sql;do mysql -u root -pPassword DataBase < $i;done

সাধারণ আমদানির জন্য:

# Unix-based solution
mysql -u root -pPassword DataBase < data.sql

জন্য wamp :

#mysqlVersion replace with your own version
C:\wamp\bin\mysql\mysqlVersion\bin\mysql.exe -u root -pPassword DataBase < data.sql

এক্সএএমপিপির জন্য:

C:\xampp\mysql\bin\mysql -u root -pPassword DataBase < data.sql

16

যদি .sql ফাইল আছে কমান্ড লাইন ডেটাবেসের নাম উল্লেখ করার প্রয়োজন হবে না CREATE DATABASE IF NOT EXISTS db_nameএবং USE db_nameবিবৃতি।

.Sql ফাইলটিতে উল্লিখিত ডাটাবেসটি যদি না থাকে তবে কেবলমাত্র আপনি এমন একটি ব্যবহারকারীর সাথে সংযোগ করছেন যা ডাটাবেস তৈরির অনুমতি পেয়েছে।


14

একটি ডাটাবেস আমদানি করুন

  1. ড্রাইভে যান:

    command: d:
  2. মাইএসকিউএল লগইন করুন

    command: c:\xampp\mysql\bin\mysql -u root -p
  3. এটি পিডাব্লুডিকে জিজ্ঞাসা করবে। এটি লিখুন:

    pwd
  4. ডাটাবেস নির্বাচন করুন

    use DbName;
  5. ফাইলের নাম দিন

    \.DbName.sql

11

আপনার মাইএসকিউএল রয়েছে সেই ডিরেক্টরিতে যান।

 c:\mysql\bin\> mysql -u username -p password database_name <
 filename.sql

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

mysqldump -u username -ppassword all-databases > dump.sql

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


11

ব্যবহার করুন:

mysql -u root -p password -D database_name << import.sql

বিশদগুলির জন্য মাইএসকিউএল সহায়তা ব্যবহার করুন - mysql --help

আমি মনে করি এগুলি আমাদের প্রসঙ্গে দরকারী বিকল্পগুলি হবে:

[~]$ mysql --help
mysql  Ver 14.14 Distrib 5.7.20, for osx10.12 (x86_64) using  EditLine wrapper
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Usage: mysql [OPTIONS] [database]
  -?, --help          Display this help and exit.
  -I, --help          Synonym for -?
  --bind-address=name IP address to bind to.
  -D, --database=name Database to use.
  --delimiter=name    Delimiter to be used.
  --default-character-set=name Set the default character set.
  -f, --force         Continue even if we get an SQL error.
  -p, --password[=name] Password to use when connecting to server.
  -h, --host=name     Connect to host.
  -P, --port=#        Port number to use for connection or 0 for default to, in order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/services, built-in default (3306).
  --protocol=name     The protocol to use for connection (tcp, socket, pipe,
  -s, --silent        Be more silent. Print results with a tab as separator, each row on new line.
  -v, --verbose       Write more. (-v -v -v gives the table output format).
  -V, --version       Output version information and exit.
  -w, --wait          Wait and retry if connection is down.

মজাটি কী, যদি আমরা একটি বড় ডেটাবেস আমদানি করি এবং একটি অগ্রগতি বার না রাখি। পাইপ ভিউয়ার ব্যবহার করুন এবং পাইপের মাধ্যমে ডেটা স্থানান্তর দেখুন

ম্যাকের জন্য, brew install pv

ডেবিয়ান / উবুন্টুর জন্য apt-get install pv,।

অন্যদের জন্য, পিভি দেখুন - পাইপ ভিউয়ার

pv import.sql | mysql -u root -p password -D database_name

1.45GiB 1:50:07 [339.0KiB/s]   [=============>      ] 14% ETA 11:09:36
1.46GiB 1:50:14 [ 246KiB/s]     [=============>      ] 14% ETA 11:09:15
1.47GiB 1:53:00 [ 385KiB/s]     [=============>      ] 14% ETA 11:05:36

সেন্টোসের জন্য:yum install pv
জনি


9

যদিও বেশিরভাগ উত্তরগুলিতে এখানে কেবল সহজ কমান্ডটি উল্লেখ করা হয়েছে

mysql -u database_user -p [db_name] <database_file.sql

আজ এটি খুব সাধারণ যে ডাটাবেস এবং টেবিলগুলিতে utf8- সমষ্টি রয়েছে যেখানে এই আদেশটি যথেষ্ট নয়। রফতানি টেবিলগুলিতে utf8- কোলেশন থাকা এই কমান্ডটি ব্যবহার করা দরকার:

mysql -u ডাটাবেস_ইউসার-পি --default- অক্ষর-সেট = utf8 [db_name] <ডাটাবেস_ফিল.এসকিউএল

সার্লে এটি অন্যান্য চরসেটের জন্যও কাজ করে, কীভাবে সঠিক স্বরলিপিটি প্রদর্শিত হয় তা এখানে দেখা যায়:

https://dev.mysql.com/doc/refman/5.7/en/show-collation.html

একটি মন্তব্য আরও উল্লেখ করেছে যে কোনও ডাটাবেস কখনও না থাকলে প্রথমে একটি খালি ডাটাবেস তৈরি করতে হবে। এটি কিছু ক্ষেত্রে সঠিক হতে পারে তবে রফতানির ফাইলের উপর নির্ভর করে। যদি এক্সপোর্ট করা ফাইলটিতে ডেটাবেস তৈরির জন্য ইতিমধ্যে কমান্ড অন্তর্ভুক্ত থাকে তবে ডাটাবেসটি কখনও কোনও পৃথক পদক্ষেপে তৈরি করতে হবে না, যা এমনকি আমদানিতে ত্রুটি সৃষ্টি করতে পারে। সুতরাং আমদানির সময় কোন কমান্ড সেখানে অন্তর্ভুক্ত রয়েছে তা জানার জন্য ফাইলটিতে প্রথমে এক নজর দেওয়া বাঞ্ছনীয়, রফতানির সময় সেটিংসটি নোট করুন, বিশেষত যদি ফাইলটি খুব বড় এবং সম্পাদকের মধ্যে পড়তে খুব শক্ত হয়।

কমান্ডের আরও প্যারামিটার রয়েছে যা এখানে তালিকাবদ্ধ এবং ব্যাখ্যা করা হয়েছে:

https://dev.mysql.com/doc/refman/5.7/en/mysql-command-options.html

আপনি যদি অন্য কোনও ডাটাবেস-সংস্করণ ব্যবহার করেন তবে ম্যানুয়ালটিরও একই সংস্করণ সন্ধান করতে বিবেচনা করুন। উল্লিখিত লিঙ্কগুলি মাইএসকিউএল সংস্করণ 5.7 পড়ুন।


9

একটি ডাটাবেস রফতানির জন্য:

mysqldump -u username -p database_name > file.sql

একটি ডাটাবেস আমদানির জন্য:

mysql -u username -p database_name < file.sql

8

নিম্নলিখিত কমান্ডটি ডাব্লুএএমপি-র উইন্ডোজ 7-এর কমান্ড লাইন (সেন্টিমিডি) থেকে আমার জন্য কাজ করে ।

d:/wamp/bin/mysql/mysql5.6.17/bin/mysql.exe -u root -p db_name < database.sql

8

আপনি এই কোয়েরি চেষ্টা করতে পারেন।

রপ্তানি:

mysqldump -u username –-password=your_password database_name > file.sql

আমদানি:

mysql -u username –-password=your_password database_name < file.sql

এবং বিস্তারিত এই লিঙ্ক অনুসরণ:

https://chartio.com/resources/tutorials/importing-from-and-exporting-to-files-using-the-mysql-command-line/


7

আমি ভেবেছিলাম যারা এটি ব্যবহার করছেন তাদের পক্ষে এটি কার্যকর হতে পারে ম্যাক ওএস এক্স :

/Applications/xampp/xamppfiles/bin/mysql -u root -p database < database.sql

বা অন্যান্য ওয়েব সার্ভারের xamppসাথে প্রতিস্থাপন করুন mamp


6

কখনও কখনও বন্দর নির্ধারিত পাশাপাশি সেই ডাটাবেসের সার্ভার আইপি ঠিকানাও গুরুত্বপূর্ণ ...

mysql -u user -p user -h <Server IP> -P<port> (DBNAME) < DB.sql 

6

ডাটাবেসে আমদানি করুন:

mysql -u ব্যবহারকারীর নাম -p ডাটাবেস_নাম </ ফাইলের পথ / file_name.sql

ডাটাবেস থেকে রফতানি করুন:

mysqldump -u ব্যবহারকারীর নাম -p ডাটাবেস_নাম> / ফাইলের পথ / file_name.sql

এই আদেশগুলির পরে, একটি প্রম্পট আপনার মাইএসকিউএল পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে।


5

ব্যাকআপ উদ্দেশ্যে, একটি বাদুড় ফাইল বানান এবং ব্যবহার করে এই ব্যাট ফাইলটি রান কার্য পরিকল্পনাকারী । এটি ডাটাবেসের ব্যাকআপ নেবে; কেবলমাত্র নীচের লাইনটি অনুলিপি করুন এবং নোটপ্যাডে পেস্ট করুন এবং তারপরে .bat ফাইলটি সংরক্ষণ করুন এবং আপনার সিস্টেমে এটি চালান।

@echo off
for /f "tokens=1" %%i in ('date /t') do set DATE_DOW=%%i
for /f "tokens=2" %%i in ('date /t') do set DATE_DAY=%%i
for /f %%i in ('echo %date_day:/=-%') do set DATE_DAY=%%i
for /f %%i in ('time /t') do set DATE_TIME=%%i
for /f %%i in ('echo %date_time::=-%') do set DATE_TIME=%%i

"C:\Program Files\MySQL\mysql server 5.5\bin\mysqldump" -u username -ppassword mysql>C:/%DATE_DAY%_%DATE_TIME%_database.sql

5

নিম্নলিখিত পদক্ষেপগুলি file.sqlমাইএসকিউএল ডাটাবেসে আপলোড করতে সহায়তা করে।

ধাপ 1: আপলোড file.sql.zipকোনো ডিরেক্টরিতে এবং আনজিপ সেখানে
নোট : sudo apt-get install unzip : sudo apt-get unzip file.sql.zip
পদক্ষেপ 2: এখন নেভিগেট যে ডিরেক্টরিতে। উদাহরণ:cd /var/www/html

পদক্ষেপ 3: mysql -u username -p database-name < file.sql
পাসওয়ার্ডটি প্রবেশ করান এবং আপলোড সম্পন্ন হওয়া পর্যন্ত অপেক্ষা করুন।


5

ডাটাবেসটি তৈরি করা হয়নি এমন সমস্যাটিতে আমি চালিয়ে যেতে থাকি।

আমি এটি ঠিক করেছিলাম

mysql -u root -e "CREATE DATABASE db_name"
mysql db_name --force < import_script.sql
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.