Lệnh tee trong MySQL

mysql gửi từng câu lệnh SQL mà bạn đưa ra tới máy chủ để được thực thi. Ngoài ra còn có một bộ lệnh mà mysql tự giải thích. Để biết danh sách các lệnh này, hãy nhập

mysql> pager cat > /tmp/log.txt
0 hoặc
mysql> pager cat > /tmp/log.txt
1 tại dấu nhắc
mysql> pager cat > /tmp/log.txt
2

mysql> help

List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear command.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as
               new delimiter.
edit      (\e) Edit command with $EDITOR.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
system    (\!) Execute a system shell command.
tee       (\T) Set outfile [to_outfile]. Append everything into given
               outfile.
use       (\u) Use another database. Takes database name as argument.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.

Mỗi lệnh có cả dạng dài và dạng ngắn. Dạng dài không phân biệt chữ hoa chữ thường; . Biểu mẫu dài có thể được theo sau bởi dấu chấm phẩy tùy chọn, nhưng biểu mẫu ngắn không nên

Trong lệnh

mysql> pager cat > /tmp/log.txt
3, bạn nên tránh sử dụng ký tự dấu gạch chéo ngược (‘
mysql> pager cat > /tmp/log.txt
4’) vì đó là ký tự thoát của MySQL

Các lệnh chỉnh sửa, nopager, máy nhắn tin và hệ thống chỉ hoạt động trong Unix

Lệnh

mysql> pager cat > /tmp/log.txt
5 cung cấp một số thông tin về kết nối và máy chủ bạn đang sử dụng. Nếu bạn đang chạy ở chế độ
mysql> pager cat > /tmp/log.txt
6, thì
mysql> pager cat > /tmp/log.txt
5 cũng in các giá trị cho các biến mysql ảnh hưởng đến các truy vấn của bạn

Để ghi lại các truy vấn và đầu ra của chúng, hãy sử dụng lệnh tee. Tất cả dữ liệu hiển thị trên màn hình được thêm vào một tệp nhất định. Điều này cũng có thể rất hữu ích cho mục đích gỡ lỗi. Bạn có thể kích hoạt tính năng này trên dòng lệnh với tùy chọn

mysql> pager cat > /tmp/log.txt
8 hoặc tương tác với lệnh tee. Tệp tee có thể bị vô hiệu hóa tương tác bằng lệnh notee. Thực hiện lại tee kích hoạt lại ghi nhật ký. Không có tham số, tệp trước đó được sử dụng. Lưu ý rằng tee xóa kết quả truy vấn vào tệp sau mỗi câu lệnh, ngay trước khi mysql in lời nhắc tiếp theo của nó

Bằng cách sử dụng tùy chọn

mysql> pager cat > /tmp/log.txt
9, có thể duyệt hoặc tìm kiếm kết quả truy vấn ở chế độ tương tác với các chương trình Unix như less, more hoặc bất kỳ chương trình tương tự nào khác. Nếu bạn chỉ định không có giá trị cho tùy chọn, mysql sẽ kiểm tra giá trị của biến môi trường
mysql> pager cat > /tmp/log.txt
10 và đặt máy nhắn tin thành giá trị đó. Phân trang đầu ra có thể được kích hoạt tương tác với lệnh máy nhắn tin và bị vô hiệu hóa với nopager. Lệnh nhận một đối số tùy chọn; . Không có đối số, máy nhắn tin được đặt thành máy nhắn tin đã được đặt trên dòng lệnh hoặc
mysql> pager cat > /tmp/log.txt
11 nếu không có máy nhắn tin nào được chỉ định

Phân trang đầu ra chỉ hoạt động trong Unix vì nó sử dụng hàm

mysql> pager cat > /tmp/log.txt
12, không tồn tại trên Windows. Đối với Windows, tùy chọn tee có thể được sử dụng thay thế để lưu đầu ra truy vấn, mặc dù điều này không thuận tiện như máy nhắn tin để duyệt đầu ra trong một số trường hợp

Dưới đây là một số mẹo về lệnh máy nhắn tin

  • Bạn có thể sử dụng nó để ghi vào một tệp và kết quả chỉ đến tệp

    mysql> pager cat > /tmp/log.txt
    

    Bạn cũng có thể chuyển bất kỳ tùy chọn nào cho chương trình mà bạn muốn sử dụng làm máy nhắn tin của mình

    mysql> pager cat > /tmp/log.txt
    
    1
  • Trong ví dụ trước, lưu ý tùy chọn

    mysql> pager cat > /tmp/log.txt
    
    13. Bạn có thể thấy nó rất hữu ích để duyệt các kết quả truy vấn rộng. Đôi khi một tập hợp kết quả rất rộng rất khó đọc trên màn hình. Tùy chọn
    mysql> pager cat > /tmp/log.txt
    
    13 thành ít hơn có thể làm cho tập hợp kết quả dễ đọc hơn nhiều vì bạn có thể cuộn tập hợp theo chiều ngang bằng các phím mũi tên trái và phải. Bạn cũng có thể sử dụng
    mysql> pager cat > /tmp/log.txt
    
    13 một cách tương tác trong vòng ít hơn để bật và tắt chế độ duyệt ngang. Để biết thêm thông tin, hãy đọc trang hướng dẫn ít hơn

    mysql> pager cat > /tmp/log.txt
    
    9
  • Bạn có thể chỉ định các lệnh máy nhắn tin rất phức tạp để xử lý đầu ra truy vấn

    mysql> pager cat > /tmp/log.txt
    
    0

    Trong ví dụ này, lệnh sẽ gửi kết quả truy vấn tới hai tệp trong hai thư mục khác nhau trên hai hệ thống tệp khác nhau được gắn trên

    mysql> pager cat > /tmp/log.txt
    
    16 và
    mysql> pager cat > /tmp/log.txt
    
    17, nhưng vẫn hiển thị kết quả trên màn hình thông qua less

Bạn cũng có thể kết hợp các chức năng tee và máy nhắn tin. Bật tệp tee và máy nhắn tin được đặt thành ít hơn và bạn có thể duyệt kết quả bằng cách sử dụng ít chương trình hơn và đồng thời vẫn có mọi thứ được thêm vào một tệp. Sự khác biệt giữa tee Unix được sử dụng với lệnh máy nhắn tin và lệnh tee tích hợp mysql là tee tích hợp hoạt động ngay cả khi bạn không có sẵn tee Unix. Tee tích hợp cũng ghi lại mọi thứ được in trên màn hình, trong khi tee Unix được sử dụng với máy nhắn tin không ghi lại nhiều như vậy. Ngoài ra, ghi nhật ký tệp tee có thể được bật và tắt một cách tương tác từ bên trong mysql. Điều này hữu ích khi bạn muốn ghi một số truy vấn vào một tệp chứ không phải các truy vấn khác

Lời nhắc

mysql> pager cat > /tmp/log.txt
2 mặc định có thể được cấu hình lại. Chuỗi để xác định dấu nhắc có thể chứa các chuỗi đặc biệt sau

Tùy chọnMô tả

mysql> pager cat > /tmp/log.txt
19Phiên bản máy chủ
mysql> pager cat > /tmp/log.txt
90Cơ sở dữ liệu mặc định
mysql> pager cat > /tmp/log.txt
1Máy chủ lưu trữ
mysql> pager cat > /tmp/log.txt
92Tệp ổ cắm hoặc cổng TCP/IP hiện tại
mysql> pager cat > /tmp/log.txt
93Tên người dùng của bạn
mysql> pager cat > /tmp/log.txt
94Tên tài khoản đầy đủ của bạn
mysql> pager cat > /tmp/log.txt
95@
mysql> pager cat > /tmp/log.txt
96
mysql> pager cat > /tmp/log.txt
97Một ký tự gạch chéo ngược '
mysql> pager cat > /tmp/log.txt
4' theo nghĩa đen
mysql> pager cat > /tmp/log.txt
99A ký tự dòng mới
mysql> pager cat > /tmp/log.txt
00A ký tự tab
mysql> pager cat > /tmp/log.txt
4Khoảng cách (dấu cách sau dấu gạch chéo ngược)
mysql> pager cat > /tmp/log.txt
02A khoảng cách 4 giờ hiện tại, quân sự trong 4

'

mysql> pager cat > /tmp/log.txt
4' theo sau bởi bất kỳ chữ cái nào khác sẽ trở thành chữ cái đó

Nếu bạn chỉ định lệnh

mysql> pager cat > /tmp/log.txt
59 không có đối số, mysql sẽ đặt lại lời nhắc về mặc định là
mysql> pager cat > /tmp/log.txt
2

Bạn có thể đặt lời nhắc theo nhiều cách

  • Sử dụng một biến môi trường. Bạn có thể đặt biến môi trường

    mysql> pager cat > /tmp/log.txt
    
    61 thành chuỗi dấu nhắc. Ví dụ

    mysql> pager cat > /tmp/log.txt
    
    5
  • Sử dụng tùy chọn dòng lệnh. Bạn có thể đặt tùy chọn

    mysql> pager cat > /tmp/log.txt
    
    62 trên dòng lệnh thành mysql. Ví dụ

    mysql> pager cat > /tmp/log.txt
    
    6
  • Sử dụng tệp tùy chọn. Bạn có thể đặt tùy chọn

    mysql> pager cat > /tmp/log.txt
    
    59 trong nhóm
    mysql> pager cat > /tmp/log.txt
    
    64 của bất kỳ tệp tùy chọn MySQL nào, chẳng hạn như tệp
    mysql> pager cat > /tmp/log.txt
    
    65 hoặc tệp
    mysql> pager cat > /tmp/log.txt
    
    66 trong thư mục chính của bạn. Ví dụ

    mysql> pager cat > /tmp/log.txt
    
    4

    Trong ví dụ này, lưu ý rằng dấu gạch chéo ngược được nhân đôi. Nếu bạn đặt lời nhắc bằng tùy chọn

    mysql> pager cat > /tmp/log.txt
    
    59 trong tệp tùy chọn, bạn nên nhân đôi dấu gạch chéo ngược khi sử dụng các tùy chọn lời nhắc đặc biệt. Có một số trùng lặp trong tập hợp các tùy chọn lời nhắc được phép và tập hợp các chuỗi thoát đặc biệt được nhận dạng trong các tệp tùy chọn. (Các trình tự này được liệt kê trong Phần 4. 3. 2, “Sử dụng tệp tùy chọn”. ) Sự trùng lặp có thể gây ra sự cố cho bạn nếu bạn sử dụng các dấu gạch chéo ngược đơn lẻ. Ví dụ:
    mysql> pager cat > /tmp/log.txt
    
    09 được hiểu là khoảng trắng thay vì giá trị giây hiện tại. Ví dụ sau đây cho biết cách xác định lời nhắc trong tệp tùy chọn để bao gồm thời gian hiện tại ở định dạng
    mysql> pager cat > /tmp/log.txt
    
    69

    mysql> pager cat > /tmp/log.txt
    
    8
  • Đặt lời nhắc tương tác. Bạn có thể thay đổi lời nhắc của mình một cách tương tác bằng cách sử dụng lệnh

    mysql> pager cat > /tmp/log.txt
    
    59 (hoặc
    mysql> pager cat > /tmp/log.txt
    
    03). Ví dụ

    Việc sử dụng lệnh tee trong Linux là gì?

    lệnh tee đọc đầu vào tiêu chuẩn và ghi vào cả đầu ra tiêu chuẩn và một hoặc nhiều tệp . Lệnh này được đặt tên theo bộ chia chữ T được sử dụng trong hệ thống ống nước. Về cơ bản, nó phá vỡ đầu ra của một chương trình để nó có thể được hiển thị và lưu trong một tệp.

    Lệnh sử dụng trong MySQL là gì?

    Câu lệnh USE yêu cầu MySQL sử dụng cơ sở dữ liệu đã đặt tên làm cơ sở dữ liệu mặc định (hiện tại) cho các câu lệnh tiếp theo . Câu lệnh này yêu cầu một số đặc quyền cho cơ sở dữ liệu hoặc một số đối tượng bên trong nó.

    Cổng TCP IP mặc định cho MySQL là gì?

    Cổng. Cổng TCP/IP mà máy chủ MySQL đang lắng nghe (mặc định là 3306 ).