Câu trả lời:
Giả sử bạn đang sử dụng bảng điều khiển Linux hoặc Windows:
Nhắc mật khẩu:
mysql -u <username> -p <databasename> < <filename.sql>
Nhập mật khẩu trực tiếp (không an toàn):
mysql -u <username> -p<PlainPassword> <databasename> < <filename.sql>
Thí dụ:
mysql -u root -p wp_users < wp_users.sql
mysql -u root -pPassword123 wp_users < wp_users.sql
Xem thêm:
4.5.1.5. Thực thi các câu lệnh SQL từ một tệp văn bản
Lưu ý : Nếu bạn đang ở trên windows thì bạn sẽ phải cd
(thay đổi thư mục) sang thư mục MySQL / bin của bạn bên trong CMD trước khi thực hiện lệnh.
source
, chúng tôi có thể thấy các thông báo thông tin ( "hàng bị ảnh hưởng" ) và thông báo lỗi. Nhưng sử dụng giải pháp của bạn, làm thế nào để chúng ta thấy các tin nhắn sử dụng < filename.sql
?
Cách tốt nhất cho windows:
Mở bàn điều khiển và bắt đầu chế độ MySQL tương tác
use <name_of_your_database>;
source <path_of_your_.sql>
;
ở cuối câu lệnh, nhưng có một vài ngoại lệ, bao gồm USE
và SOURCE
.
;
các source
lệnh được thực hiện thành công. Trước khi nó không.
mysql -u <USERNAME> -p <DB NAME> < <dump file path>
-u
- cho tên người dùng
-p
- để nhắc mật khẩu
Ví dụ. mysql -u root -p mydb < /home/db_backup.sql
Bạn cũng có thể cung cấp mật khẩu đi trước -p nhưng vì lý do bảo mật nên không thể thực hiện được. Mật khẩu sẽ xuất hiện trên chính lệnh được che dấu.
Từ thiết bị đầu cuối:
mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql
trong loại thiết bị đầu cuối
mysql -uroot -p1234; use databasename; source /path/filename.sql
Giải trình:
Đầu tiên tạo cơ sở dữ liệu hoặc sử dụng cơ sở dữ liệu hiện có. Trong trường hợp của tôi, tôi đang sử dụng một cơ sở dữ liệu hiện có
Tải cơ sở dữ liệu bằng cách đưa ra <name of database> = ClassicModels
trong trường hợp của tôi và sử dụng toán tử <
cung cấp đường dẫn đếndatabase = sakila-data.sql
Bằng cách chạy các bảng hiển thị, tôi nhận được danh sách các bảng như bạn có thể thấy.
Lưu ý: Trong trường hợp của tôi, tôi gặp lỗi 1062 , vì tôi đang cố tải lại điều tương tự.
mysql -u username -ppassword dbname < /path/file-name.sql
thí dụ
mysql -u root -proot product < /home/myPC/Downloads/tbl_product.sql
Sử dụng cái này từ thiết bị đầu cuối
Lệnh bên dưới đang hoạt động trên Ubuntu 16.04, tôi không chắc nó có hoạt động hay không các nền tảng Linux khác.
Xuất tệp SQL:
$ mysqldump -u [user_name] -p [database_name] < [database_name.sql]
Ví dụ: mysqldump -u root -p max_development> max_development.sql
Nhập tệp SQL:
$ mysqldump -u [user_name] -p [database_name] > [file_name.sql]
Example: mysqldump -u root -p max_production < max_development.sql
Lưu ý tệp SQL nên tồn tại cùng thư mục
Mở Terminal Sau đó
mysql -u root -p
eg:- mysql -u shabeer -p
Sau đó tạo cơ sở dữ liệu
mysql> create database "Name";
eg:- create database INVESTOR;
Sau đó chọn cơ sở dữ liệu mới "NHÀ ĐẦU TƯ"
mysql> USE INVESTOR;
Chọn đường dẫn của tệp sql từ máy
mysql> source /home/shabeer/Desktop/new_file.sql;
Sau đó nhấn enter và đợi một vài lần nếu tất cả đã được thực thi
mysql> exit
Mở Máy khách dòng lệnh MySQL và nhập mật khẩu của bạn
Thay đổi cơ sở dữ liệu bạn muốn sử dụng để nhập dữ liệu tệp .sql vào. Làm điều này bằng cách gõ:
USE your_database_name
Bây giờ xác định vị trí tệp .sql bạn muốn thực thi.
Nếu tệp được đặt trong thư mục ổ đĩa C: cục bộ chính và tên tệp tập lệnh .sql là currentSqlTable.sql
, bạn sẽ gõ như sau:
\. C:\currentSqlTable.sql
và nhấn Enterđể thực thi tệp tập lệnh SQL.
Sau khi vật lộn đôi lúc tôi đã tìm thấy thông tin trong https://tommcfarlin.com/importing-a-large-database/
Kết nối với Mysql (hãy sử dụng root cho cả tên người dùng và mật khẩu):
mysql -uroot -proot
Kết nối với cơ sở dữ liệu (giả sử nó được gọi là blankDatabase (bạn sẽ nhận được thông báo xác nhận):
connect emptyDatabase
3 Nhập mã nguồn, giả sử tệp được gọi là mySource.sql và nó nằm trong thư mục có tên mySoureDb trong hồ sơ của người dùng có tên myUser:
source /Users/myUser/mySourceDB/mySource.sql
Nếu bạn đang sử dụng sakila-db từ trang web mysql, rất dễ dàng trên nền tảng Linux, chỉ cần làm theo các bước được đề cập dưới đây, Sau khi tải xuống tệp zip của sakila-db , hãy giải nén nó. Bây giờ bạn sẽ có hai tệp, một tệp là sakila-lược.sql và tệp còn lại là sakila-data.sql .
Xin lưu ý rằng các tập tin giải nén có mặt trong thư mục nhà .
Trong Ubuntu, từ màn hình MySQL , bạn đã sử dụng cú pháp này:
mysql> use <dbname>
-> Câu lệnh USE bảo MySQL sử dụng dbname
làm cơ sở dữ liệu mặc định cho các câu lệnh tiếp theo
mysql> source <file-path>
ví dụ :
mysql> use phonebook;
mysql> source /tmp/phonebook.sql;
Quan trọng : đảm bảo tệp sql nằm trong thư mục mà mysql có thể truy cập vào like / tmp
Trước khi chạy các lệnh trên thiết bị đầu cuối, bạn phải đảm bảo rằng bạn đã cài đặt MySQL trên thiết bị đầu cuối của mình.
Bạn có thể sử dụng lệnh sau để cài đặt nó:
sudo apt-get update
sudo apt-get install mysql-server
Chuyển hướng ở đây .
Sau đó, bạn có thể sử dụng các lệnh sau để nhập cơ sở dữ liệu:
mysql -u <username> -p <databasename> < <filename.sql>
Cách đơn giản nhất để nhập cơ sở dữ liệu trong MYSQL của bạn từ thiết bị đầu cuối được thực hiện theo quy trình được đề cập dưới đây -
mysql -u root -p root database_name < path to your .sql file
Những gì tôi đang làm ở trên là:
root
& root
)<
và sau đó đường dẫn đến tệp .sql của bạn. Ví dụ: nếu tệp của tôi được lưu trữ trong Máy tính để bàn, đường dẫn sẽ là/home/Desktop/db.sql
Đó là nó. Khi bạn đã thực hiện tất cả điều này, nhấn enter và đợi tệp .sql của bạn được tải lên cơ sở dữ liệu tương ứng
Không có khoảng cách giữa -p và mật khẩu
mysql -u [dbusername] -p[dbpassword] [databasename] < /home/serverusername/public_html/restore_db/database_file.sql
Tôi luôn luôn sử dụng nó, nó hoạt động hoàn hảo. Nhờ đặt câu hỏi này. Có một ngày tuyệt vời. Vui mừng :)