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
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]
#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]
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
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
8Ví 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
9Sau 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
3Thự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
4Chú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
60Vì 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
61Bâ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
62Ví 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
64Ví dụ
services.msc
65Q #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
66Sau 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
67Q #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
68Q #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
69Khi 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