Jadi ada beberapa tempat di mana terminal mencari perintah. Tempat ini disimpan di $PATH
. Anda variabel. Anggap saja sebagai variabel global di mana terminal beralih untuk mencari perintah apa pun. Ini biasanya binari melihat bagaimana folder /bin biasanya direferensikan.
/bin
folder memiliki banyak file yang dapat dieksekusi di dalamnya. Ternyata ini adalah perintah. Lokasi folder yang berbeda ini disimpan di dalam satu variabel Global yaitu $PATH
dipisahkan oleh :
Sekarang biasanya program saat penginstalan menangani pembaruan PATH
&memberi tahu terminal Anda bahwa saya dapat menjadi semua perintah di dalam bin
my saya map.
Ternyata MySql tidak melakukannya saat menginstal jadi kami harus melakukannya secara manual.
Kami melakukannya dengan mengikuti perintah,
export PATH=$PATH:/usr/local/mysql/bin
Jika Anda memecahnya, export
sudah cukup jelas. Anggap saja sebagai tugas. Jadi export
variabel PATH
dengan nilai lama $PATH
concat dengan bin
baru yaitu /usr/local/mysql/bin
Dengan cara ini setelah menjalankannya semua perintah di dalam /usr/local/mysql/bin
tersedia untuk kita.
Ada tangkapan kecil di sini. Pikirkan satu jendela terminal sebagai salah satu contoh program dan mungkin sesuatu seperti $PATH
adalah variabel kelas ( mungkin ). Perhatikan ini adalah asumsi murni. Jadi setelah tutup kita kehilangan tugas baru. Dan jika kita membuka kembali terminal, kita tidak akan memiliki akses ke perintah kita lagi karena terakhir ketika kita mengekspor, itu disimpan di memori utama yang tidak stabil.
Sekarang kita perlu mengekspor binari mysql setiap kali kita menggunakan terminal. Jadi kita harus bertahan concat di jalan kita.
Anda mungkin menyadari bahwa terminal kami menggunakan sesuatu yang disebut dotfiles
untuk memuat konfigurasi pada inisialisasi terminal. Saya suka menganggapnya sebagai set hal yang diteruskan ke konstruktor setiap kali instance terminal baru dibuat (Sekali lagi asumsi tetapi dekat dengan apa yang mungkin dilakukannya). Jadi ya sekarang Anda mengerti apa yang akan kita lakukan.
.bash_profile
adalah salah satu dotfile
utama yang diketahui .
Jadi dalam perintah berikut,
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> ~/.bash_profile
Yang kami lakukan adalah menyimpan hasil echo
yaitu string keluaran ke ~/.bash_profile
Jadi sekarang seperti yang kami sebutkan di atas setiap kali kami membuka terminal atau instance terminal dotfiles
kami dimuat. Jadi .bash_profile
dimuat masing-masing dan export
yang kami tambahkan di atas dijalankan &dengan demikian menjadi $PATH
global global kami diperbarui dan kami mendapatkan semua perintah di dalam /usr/local/mysql/bin
.
P.s.
jika Anda tidak menjalankan perintah ekspor pertama secara langsung tetapi hanya menjalankan perintah kedua untuk mempertahankannya? Daripada untuk instance terminal yang sedang berjalan, Anda harus,
source ~/.bash_profile
Ini memberitahu terminal kita untuk memuat ulang file tertentu.