Chạy lệnh MySQL từ dòng lệnh

Thực thi các truy vấn MySQL trong Linux là một kỹ năng cần thiết cho các nhà phát triển back-end hoặc DevOps. Mặc dù có rất nhiều ứng dụng khách GUI để xử lý cơ sở dữ liệu, nhưng một kịch bản phổ biến là nhà phát triển thích chạy một số truy vấn trực tiếp trên thiết bị đầu cuối Linux. Chưa kể rằng đôi khi nhà phát triển có thể cần viết một tập lệnh bash…

MySQL là một ứng dụng cơ sở dữ liệu quan hệ nguồn mở và phổ biến. Do đó, nhiều máy chủ sử dụng MySQL. Cách bạn truy cập cơ sở dữ liệu phụ thuộc vào hệ điều hành mà bạn đang làm việc

Hướng dẫn này hướng dẫn bạn cách sử dụng Dòng lệnh Windows để kết nối với cơ sở dữ liệu MySQL

Chạy lệnh MySQL từ dòng lệnh

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

Chúng ta có thể chọn MySQL shell để 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 vỏ 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
services.msc
5

#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

services.msc
6

Ở đâ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

services.msc
7

#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)

Chạy lệnh MySQL từ dòng lệnh

#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)

Chạy lệnh MySQL từ dòng lệnh

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

Chạy lệnh MySQL từ dòng lệnh

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

services.msc
8

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ụ

services.msc
9

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 CREATE TABLE của MySQL

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.exe -u[username] -p
0

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

mysql.exe -u[username] -p
1

#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.exe -u[username] -p
2

#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

mysql.exe -u[username] -p
3

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.

mysql.exe -u[username] -p
4

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

services.msc
60

Chạy lệnh MySQL từ dòng lệnh

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

services.msc
61

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ư

services.msc
62

Ví dụ

services.msc
63

Đố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)

services.msc
64

Ví dụ

services.msc
65

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

services.msc
66

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

services.msc
67

Chạy lệnh MySQL từ dòng lệnh

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

services.msc
68

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”

services.msc
69

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 MySQL trong dòng lệnh?

Bạn cũng có thể truy cập Máy khách dòng lệnh MySQL từ Dấu nhắc lệnh. .
Mở dấu nhắc lệnh
Điều hướng đến thư mục bin. Ví dụ. CDC. \Tệp chương trình\MySQL\Máy chủ MySQL 8. 0\bin
Chạy lệnh mysql -u root -p
Nhập mật khẩu

Làm cách nào để chạy tệp SQL trong cmd?

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 truy vấn MySQL trong Linux?

4 cách chạy truy vấn MySQL trong dòng lệnh Bash hoặc Linux .
Chạy truy vấn với tùy chọn “-e”. .
Nhập tệp SQL bên ngoài. .
Nhập tệp SQL với chuyển hướng đầu vào. .
Sử dụng “here-document” để xử lý các truy vấn nhiều dòng. .
5 Cấp độ Xử lý Chuyển hướng I/O trong Linux. .
8 Công dụng của sed trong Linux