Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng Mysql trong dòng lệnh trong osx - không tìm thấy lệnh?

Vì vậy, có rất ít nơi mà thiết bị đầu cuối tìm kiếm các lệnh. Địa điểm này được lưu trữ trong $PATH của bạn Biến đổi. Hãy coi nó như một biến toàn cục nơi terminal lặp lại để tìm kiếm bất kỳ lệnh nào. Đây thường là các mã nhị phân xem thư mục / bin thường được tham chiếu như thế nào.

/bin thư mục có rất nhiều tệp thực thi bên trong nó. Hóa ra đây là lệnh. Các vị trí thư mục khác nhau này được lưu trữ bên trong một biến Toàn cục, tức là $PATH phân tách bằng :

Giờ đây, các chương trình thường khi cài đặt sẽ quan tâm đến việc cập nhật PATH &nói với thiết bị đầu cuối của bạn rằng tôi có thể là tất cả các lệnh bên trong bin của tôi thư mục.

Hóa ra MySql không thực hiện điều đó khi cài đặt nên chúng tôi phải thực hiện theo cách thủ công.

Chúng tôi làm điều đó bằng cách làm theo lệnh,

export PATH=$PATH:/usr/local/mysql/bin

Nếu bạn chia nhỏ, hãy export là tự giải thích. Hãy coi nó như một nhiệm vụ. Vì vậy, export một biến PATH với giá trị cũ $PATH nối với bin mới tức là /usr/local/mysql/bin

Bằng cách này sau khi thực hiện tất cả các lệnh bên trong /usr/local/mysql/bin có sẵn cho chúng tôi.

Có một đánh bắt nhỏ ở đây. Hãy coi một cửa sổ đầu cuối như một phiên bản của chương trình và có thể giống như $PATH là biến lớp (có thể). Lưu ý rằng đây là giả định thuần túy. Vì vậy, khi kết thúc, chúng tôi mất nhiệm vụ mới. Và nếu chúng tôi mở lại thiết bị đầu cuối, chúng tôi sẽ không có quyền truy cập lại vào lệnh của mình vì lần cuối cùng khi chúng tôi xuất, nó đã được lưu trữ trong bộ nhớ chính dễ bay hơi.

Bây giờ chúng ta cần xuất các tệp nhị phân mysql mỗi khi chúng ta sử dụng thiết bị đầu cuối. Vì vậy, chúng tôi phải kiên trì kết hợp trong con đường của chúng tôi.

Bạn có thể biết rằng thiết bị đầu cuối của chúng tôi sử dụng thứ có tên là dotfiles để tải cấu hình khi khởi tạo thiết bị đầu cuối. Tôi thích nghĩ về nó như một tập hợp những thứ được chuyển đến constructer mỗi khi một phiên bản terminal mới được tạo (Một lần nữa là một giả định nhưng gần với những gì nó có thể đang làm). Vì vậy, có, bây giờ bạn nắm được điểm những gì chúng ta sẽ làm.

.bash_profile là một trong những dotfile chính được biết đến .

Vì vậy, trong lệnh sau,

echo 'export PATH=$PATH:/usr/local/mysql/bin' >> ~/.bash_profile

Những gì chúng tôi đang làm là lưu kết quả của echo tức là xuất chuỗi thành ~ / .bash_profile

Vì vậy, bây giờ như chúng tôi đã lưu ý ở trên mỗi khi chúng tôi mở terminal hoặc phiên bản của terminal dotfiles của chúng tôi được tải. Vì vậy, .bash_profile được tải tương ứng và export mà chúng tôi thêm vào ở trên được chạy và do đó $PATH toàn cầu của chúng tôi được cập nhật và chúng tôi nhận được tất cả các lệnh bên trong /usr/local/mysql/bin .

P.s.

nếu bạn không chạy lệnh đầu tiên xuất trực tiếp mà chỉ chạy lệnh thứ hai để duy trì nó? Đối với phiên bản đang chạy hiện tại của thiết bị đầu cuối, bạn phải,

source ~/.bash_profile

Điều này yêu cầu thiết bị đầu cuối của chúng tôi tải lại tệp cụ thể đó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP tạo bảng lỗi 1064

  2. gem mysql2 không biên dịch được với MySQL 5.6.12 trên OS X với Homebrew

  3. Làm thế nào để có được ngày cuối cùng của tháng trong MySQL

  4. Thứ tự MySQL theo nhóm trước

  5. Làm cách nào để cắt bỏ Trích dẫn hàng đầu và Dẫn đầu từ Hàng MySQL?