Làm cách nào để chạy tập lệnh trong MySQL?

Hướng dẫn này giải thích cách chúng ta có thể sử dụng MySQL từ Dòng lệnh (hoặc thiết bị đầu cuối cho người dùng dựa trên macOS và Linux) với các ví dụ minh họa

Chúng ta có thể làm hầu hết mọi thứ từ trình bao thông qua các lệnh giống như những gì chúng ta có thể làm trong các ứng dụng giao diện người dùng như MySQL Workbench hoặc TablePlus, v.v. Các công cụ giao diện người dùng trực quan và lý tưởng để trực quan hóa truy vấn, hiển thị, xuất/nhập dữ liệu, v.v.

Tuy nhiên, giao diện truy vấn/dòng lệnh nhanh hơn và được các nhà phát triển sử dụng để thực hiện truy vấn nhanh hơn

=> Đọc qua TẤT CẢ Hướng dẫn về MySQL

Bạn sẽ học được gì

MySQL từ dòng lệnh

Làm cách nào để chạy tập lệnh trong MySQL?

Cài đặt máy khách dòng lệnh MySQL

Chúng ta có thể chọn MySQL shell sẽ được cài đặt trong quá trình cài đặt MySQL. Nếu không, thì chúng ta cũng có thể chọn cài đặt MySQL shell riêng

Cài đặt trình bao MySQL có sẵn cho các hệ điều hành Windows, Linux và macOS. Trình cài đặt có sẵn dưới dạng. exe (dành cho Windows),. hệ thống dựa trên dmg (dành cho macOS) & dưới dạng gói apt cho Linux

Vui lòng tham khảo hướng dẫn từ trang web chính thức của MySQL để biết các phiên bản hệ điều hành khác nhau

Nhấp vào đây để xem hướng dẫn cài đặt MySQL Shell trên Windows

Nhấp vào đây để xem hướng dẫn cài đặt MySQL Shell trên MacOS

Nhấp vào đây để xem hướng dẫn cài đặt MySQL Shell trên Linux

Kết nối với máy khách MySQL

Khi vỏ MySQL được cài đặt, hãy làm theo các bước bên dưới để kết nối máy khách với thông tin đăng nhập người dùng nhất định

#1) Mở trình bao/thiết bị đầu cuối trong Mac/Linux (hoặc dấu nhắc lệnh trong Windows)

#2) Nếu đường dẫn hệ vỏ MySQL được thêm vào biến môi trường, bạn có thể thực thi lệnh trực tiếp, nếu không, trước tiên bạn có thể điều hướng đến thư mục cài đặt hệ vỏ MySQL.
Việc có sẵn vị trí MySQL trong biến môi trường PATH giúp gọi các lệnh dễ dàng mà không cần điều hướng đến vị trí của tệp nhị phân/tệp thực thi luôn.

  • Đối với Windows, quá trình cài đặt diễn ra bên trong thư mục 'ProgramFiles' C. \Tệp chương trình\MySQL\Máy chủ MySQL 5. 7\bin. Bạn có thể chọn thêm đường dẫn của nhị phân vào biến PATH. Tham khảo hướng dẫn tại đây
  • Tương tự, đối với người dùng dựa trên MAC và LINUX, cài đặt trình bao MySQL có sẵn tại /usr/local/mysql. Bạn có thể thêm vị trí này vào biến môi trường PATH bằng cách chạy lệnh bên dưới
EXPORT PATH=$PATH:/usr/local/mysql

#3) Bây giờ, để đăng nhập vào dòng lệnh MySQL, với tên người dùng và mật khẩu đã cho, hãy thực hiện lệnh bên dưới

mysql -u {USERNAME} -p

Ở đây, USERNAME là người dùng mà bạn muốn kết nối với máy chủ MySQL. Ví dụ: 'gốc'

Xin lưu ý, chúng tôi vừa đề cập đến -p chứ chưa phải mật khẩu thực. Điều này sẽ chỉ cho trình thông dịch biết rằng người dùng có mật khẩu để đăng nhập và sẽ được nhập trong các bước tiếp theo

Lệnh thực tế trông giống như dưới đây

$ mysql -u root -p

#4) Nhấn enter và nhận thấy rằng thiết bị đầu cuối nhắc bạn nhập mật khẩu. Nhập mật khẩu (bạn sẽ không thể thấy mật khẩu vì đầu vào bị ẩn để ngăn mọi nỗ lực độc hại/kỹ thuật xã hội nhằm lấy được mật khẩu)

Làm cách nào để chạy tập lệnh trong MySQL?

#5) Sau khi nhập đúng mật khẩu, bạn sẽ đăng nhập vào trình bao và đến dấu nhắc MySQL (sẵn sàng nhận bất kỳ lệnh MySQL nào)

Làm cách nào để chạy tập lệnh trong MySQL?

Nếu nhập sai mật khẩu sẽ xuất hiện thông báo ‘Truy cập bị từ chối’ như bên dưới

Làm cách nào để chạy tập lệnh trong MySQL?

Ghi chú. Theo mặc định, máy chủ được kết nối là localhost hoặc IP cục bộ i. e. 127. 0. 0. 1

Trong thực tế, hầu như lúc nào bạn cũng cần kết nối với một số máy chủ từ xa. Để làm được điều đó, chúng ta có thể chỉ định tên máy chủ bằng cờ -h

mysql -u {USERNAME} -h {hostIP} -p

Ví dụ Sử dụng Dòng lệnh MySQL

Dữ liệu thử nghiệm

Chúng tôi sẽ sử dụng dữ liệu thử nghiệm bên dưới để hiểu rõ hơn về các ví dụ

CREATE DATABASE IF NOT EXISTS mysql_concepts;

CREATE TABLE `orders` (
  `order_id` INT NOT NULL,
  `customer_name` VARCHAR(255),
  `city` VARCHAR(255),
  `order_total` DECIMAL(5,2),
  `order_date` VARCHAR(255),
  PRIMARY KEY (order_id)
) 

CREATE TABLE `order_details` (
  `order_id` INT,
  `product_id` INT,
  `quantity` INT,
  FOREIGN KEY (product_id) REFERENCES product_details(product_id),
  FOREIGN KEY (order_id) REFERENCES orders(order_id)
)

CREATE TABLE `product_details` (
  `product_id` INT NOT NULL,
  `product_name` VARCHAR(100),
  PRIMARY KEY(product_id));
);

Sau khi kết nối với dòng lệnh MySQL – thực hiện các truy vấn trên

Cũng đọc =>> Sử dụng lệnh MySQL CREATE TABLE

Thực thi các lệnh đơn giản bằng MySQL Shell

Hãy xem một số ví dụ/lệnh phổ biến khi sử dụng MySQL từ dòng lệnh

#1) Mysql tạo dòng lệnh cơ sở dữ liệu

MySQL [(none)]> CREATE DATABASE IF NOT exists mysql_concepts;
Query OK, 1 row affected (0.006 sec)

#2) Hiển thị tất cả các bảng trong cơ sở dữ liệu

MySQL [mysql_concepts]> SHOW TABLES;

// Output
+--------------------------+
| Tables_in_mysql_concepts |
+--------------------------+
| order_details            |
| orders                   |
| product_details          |
+--------------------------+
3 rows in set (0.001 sec)

#3) Chèn dữ liệu vào bảng – Hãy thử chèn một bản ghi vào bảng product_details

MySQL [mysql_concepts]> INSERT INTO `product_details` 
(`product_id`,`product_name`) VALUES 
(1,'Biscuits'),(2,'Chocolates');

// Output
Query OK, 2 rows affected (0.006 sec)
Records: 2  Duplicates: 0  Warnings: 0

#4) Lấy dữ liệu từ bảng – Hãy sử dụng câu lệnh SELECT để lấy dữ liệu từ bảng product_details

________số 8

Thực thi tập lệnh SQL bằng dòng lệnh MySQL

Rất nhiều lần, chúng tôi có các tệp tập lệnh SQL (có. sql) và cần được thực thi. Ví dụ: nhập/chỉnh sửa hàng loạt vào cơ sở dữ liệu

Trong phần này, chúng ta sẽ xem xét các ví dụ để thực thi. sql thông qua dòng lệnh MySQL

Chúng tôi sẽ chèn bản ghi vào bảng product_details thông qua tệp tập lệnh SQL.
Tạo tệp có tên product_details. sql sử dụng dữ liệu sau.

INSERT INTO `product_details` (`product_id`,`product_name`) VALUES (3,'Beverages');
INSERT INTO `product_details` (`product_id`,`product_name`) VALUES (4,'Clothing');

Chúng ta có thể sử dụng lệnh nguồn và chỉ định đường dẫn đầy đủ của tệp SQL

Khi bạn đã đăng nhập vào trình bao, bạn có thể chạy lệnh bên dưới

mysql -u {USERNAME} -p
0

Làm cách nào để chạy tập lệnh trong MySQL?

Vì vậy, bạn có thể thấy ở trên, chúng tôi đã thực thi các câu lệnh có trong product_details. sql và xác minh bằng cách thực thi câu lệnh SELECT (hiển thị 2 mục nhập mới có trong product_details. tập tin sql)

Xuất đầu ra Truy vấn từ Dòng lệnh MySQL

Bây giờ hãy xem cách chúng ta có thể lưu đầu ra của một truy vấn. Ví dụ: đối với tệp CSV

Trong khi chạy trên dòng lệnh, theo mặc định, đầu ra được hiển thị nội tuyến trong thiết bị đầu cuối hoặc cửa sổ lệnh. Ví dụ: khi chúng tôi muốn lưu đầu ra vào tệp CSV, chúng tôi có thể sử dụng toán tử đầu ra tệp '>'

Hãy xem một ví dụ trong đó chúng tôi lấy đầu vào từ tệp SQL và ghi đầu ra vào tệp CSV

Tạo một. sql có truy vấn CHỌN để lấy tất cả các hàng từ bảng product_details. Lưu tệp này dưới dạng get_product_details. sql

mysql -u {USERNAME} -p
1

Bây giờ hãy thực thi tệp này và lưu kết quả đầu ra trong tệp có tên product_details. csv

Chúng ta có thể sử dụng một lệnh như

mysql -u {USERNAME} -p
2

Thí dụ

mysql -u {USERNAME} -p
3

Đối với những điều trên, bạn sẽ được nhắc nhập mật khẩu. Khi quyền truy cập được cấp, truy vấn sẽ được thực thi và một tệp đầu ra có tên test. csv được tạo với các chi tiết của truy vấn CHỌN

Các câu hỏi thường gặp

Q #1) Làm cách nào để cài đặt MySQL từ dòng lệnh?

Câu trả lời. Trình cài đặt vỏ MySQL có sẵn cho các hệ điều hành khác nhau như Windows, OSx, Linux, v.v.

>> Tham khảo chi tiết tại đây

Theo tùy chọn, dòng lệnh MySQL/shell cũng có thể được cài đặt như một thành phần khi quá trình cài đặt máy chủ MySQL hoàn tất

Q #2) Làm cách nào để bạn kết nối với máy chủ MySQL từ xa từ máy khách của mình bằng dấu nhắc lệnh?

Câu trả lời. Dòng lệnh MySQL cung cấp tính linh hoạt khi kết nối với máy chủ trên máy chủ từ xa cũng như máy chủ cục bộ. Nếu không có tên máy chủ nào được chỉ định thì nó giả định rằng bạn đang cố tạo kết nối với máy chủ cục bộ (hoặc 127. 0. 0. 1)

Để kết nối với máy chủ từ xa, bạn có thể đề cập đến IP máy chủ hoặc tên máy chủ bằng cách sử dụng lệnh '-h'. (Ngoài ra, để kết nối với một cổng cụ thể, bạn có thể sử dụng cờ -P)

mysql -u {USERNAME} -p
4

Ví dụ

mysql -u {USERNAME} -p
5

Q #3) Làm cách nào tôi có thể kết nối trực tiếp với một cơ sở dữ liệu cụ thể bằng dòng lệnh MySQL?

Câu trả lời. Bằng cách sử dụng ứng dụng khách dòng lệnh MySQL, chúng tôi có thể chỉ định trực tiếp cơ sở dữ liệu mà chúng tôi muốn kết nối (và tất cả các truy vấn tiếp theo sẽ được chạy trên cơ sở dữ liệu đó)

Thực hiện lệnh dưới đây trên thiết bị đầu cuối

mysql -u {USERNAME} -p
6

Sau lệnh trên, khi bạn nhập đúng mật khẩu, bạn sẽ được kết nối trực tiếp với tên cơ sở dữ liệu đã được chỉ định (vì bạn có quyền truy cập vào cơ sở dữ liệu được đề cập)

Ví dụ. Kết nối trực tiếp với cơ sở dữ liệu có tên mysql_concepts trong khi khởi động MySQL từ dấu nhắc lệnh, chúng ta có thể sử dụng

mysql -u {USERNAME} -p
7

Làm cách nào để chạy tập lệnh trong MySQL?

Q #4) Làm cách nào để bạn xuất kết quả truy vấn MySQL ở định dạng CSV?

Câu trả lời. Dòng lệnh MySQL cung cấp các tùy chọn để chấp nhận đầu vào ở dạng. sql và chúng tôi có thể xuất kết quả tương ứng sang tệp CSV trong khi chạy từ chính thiết bị đầu cuối

mysql -u {USERNAME} -p
8

Q #5) Làm cách nào để xuất cơ sở dữ liệu MySQL từ dòng lệnh?

Câu trả lời. Để xuất cơ sở dữ liệu MySQL từ dòng lệnh, bạn có thể sử dụng lệnh “mysqldump”

mysql -u {USERNAME} -p
9

Khi bạn chạy lệnh trên trên thiết bị đầu cuối, nó sẽ nhắc bạn nhập mật khẩu. Khi nhập đúng mật khẩu, bạn sẽ thấy một tệp có tên mysql_concepts. sql được tạo trong thư mục người dùng với các tập lệnh CREATE/INSERT cho cơ sở dữ liệu mysql_concepts

Gợi ý đọc =>> Các bước tạo cơ sở dữ liệu trong MySQL

Phần kết luận

Trong hướng dẫn này, chúng ta đã học về cách sử dụng dòng lệnh MySQL. Chúng tôi đã tìm hiểu về các cách khác nhau mà chúng tôi có thể kết nối với trình bao MySQL và cách chúng tôi có thể kết nối trực tiếp với một cơ sở dữ liệu cụ thể, cách chúng tôi có thể thực thi các tệp tập lệnh SQL và xuất đầu ra sang tệp CSV

Dòng lệnh MySQL được các nhà phát triển và nhóm DevOps sử dụng để thực hiện nhanh các truy vấn và tránh GUI vì trình bao hoặc dòng lệnh nhẹ và không tiêu tốn nhiều bộ nhớ/tài nguyên so với ứng dụng khách UI đồ họa như bàn làm việc của MySQL

Làm cách nào để chạy tập lệnh trong dòng lệnh MySQL?

sử dụng ứng dụng khách dòng lệnh MySQL. mysql -h tên máy chủ -u cơ sở dữ liệu người dùng < đường dẫn/đến/kiểm tra. sql . Cài đặt các công cụ MySQL GUI và mở tệp SQL của bạn, sau đó thực thi nó. Sử dụng phpmysql nếu cơ sở dữ liệu có sẵn thông qua máy chủ web của bạn.

Làm cách nào để thực thi Truy vấn trong MySQL?

Định cấu hình MySQL - Thực hiện hành động truy vấn .
Nhấp vào nhóm hành động MySQL trong hộp công cụ hành động. hoặc. .
Kéo MySQL - Execute a query action đến điểm trong quy trình làm việc khi bạn muốn chạy truy vấn
Nhấp vào MySQL - Thực hiện một hành động truy vấn
Chọn một kết nối. Bạn chưa có?

Làm cách nào để chạy tập lệnh SQL từ dòng lệnh?

Chạy tệp tập lệnh .
Mở một cửa sổ nhắc lệnh
Trong cửa sổ Dấu nhắc Lệnh, gõ. sqlcmd -S myServer\instanceName -i C. \myScript. sql
Nhấn nút Enter

Làm cách nào để chạy tập lệnh MySQL trong Linux?

MySQL – Thực thi tập lệnh SQL .
Thực thi tập lệnh SQL theo cách trực tiếp. $ mysql -u người dùng -p cơ sở dữ liệu < tập lệnh. sql
Xác thực và sau đó chạy tập lệnh SQL. $ mysql -u người dùng -p cơ sở dữ liệu. Sau đó, mã nguồn. sql; . script. sql; . không tìm thấy tệp sql trong thư mục hiện tại, thì bạn phải chỉ định đường dẫn chứa tệp đó