mysql (dari MariaDB 10. 4. 6, juga disebut mariadb) adalah shell SQL sederhana (dengan kemampuan readline GNU). Ini mendukung penggunaan interaktif dan non-interaktif. Saat digunakan secara interaktif, hasil kueri disajikan dalam format tabel ASCII. Saat digunakan secara non-interaktif (misalnya, sebagai filter), hasilnya disajikan dalam format yang dipisahkan tab. Format keluaran dapat diubah menggunakan opsi perintah Show
Jika Anda mengalami masalah karena memori tidak cukup untuk set hasil yang besar, gunakan opsi mysql --user=user_name --password=your_password db_name1. Ini memaksa mysql untuk mengambil hasil dari server satu baris pada satu waktu daripada mengambil seluruh set hasil dan menyangganya di memori sebelum menampilkannya. Ini dilakukan dengan mengembalikan rangkaian hasil menggunakan fungsi mysql --user=user_name --password=your_password db_name2 C API di pustaka klien/server daripada mysql --user=user_name --password=your_password db_name3 Menggunakan mysql sangat mudah. Aktifkan dari prompt penerjemah perintah Anda sebagai berikut mysql db_name Atau mysql --user=user_name --password=your_password db_name Kemudian ketik pernyataan SQL, akhiri dengan “;”, \g, atau \G dan tekan Enter Mengetik Control-C menyebabkan mysql mencoba mematikan pernyataan saat ini. Jika ini tidak dapat dilakukan, atau Control-C diketik lagi sebelum pernyataan dimatikan, mysql keluar Anda dapat menjalankan pernyataan SQL dalam file skrip (file batch) seperti ini mysql db_name < script.sql > output.tab Dari MariaDB 10. 4. 6, mysql --user=user_name --password=your_password db_name_4 tersedia sebagai symlink ke mysql --user=user_name --password=your_password db_name5 Dari MariaDB 10. 5. 2, mysql --user=user_name --password=your_password db_name_5 adalah symlink, dan mysql --user=user_name --password=your_password db_name4 adalah nama biner Menggunakan mysqlPerintah untuk menggunakan mysql --user=user_name --password=your_password db_name5 dan sintaks umumnya adalah mysql Pilihanmysql --user=user_name --password=your_password db_name5 mendukung opsi berikut File OpsiSelain membaca opsi dari baris perintah, mysql --user=user_name --password=your_password db_name5 juga dapat membaca opsi dari file opsi. Jika opsi yang tidak diketahui disediakan untuk mysql --user=user_name --password=your_password db_name5 dalam file opsi, maka opsi tersebut akan diabaikan Opsi berikut terkait dengan cara alat baris perintah MariaDB menangani file opsi. Mereka harus diberikan sebagai argumen pertama pada baris perintah Di MariaDB 10. 2 dan yang lebih baru, mysql --user=user_name --password=your_password db_name_5 ditautkan dengan MariaDB Connector/C. Namun, MariaDB Connector/C belum menangani penguraian file opsi untuk klien ini. Itu masih dilakukan oleh kode parsing file opsi server. Lihat MDEV-19035 untuk informasi lebih lanjut Grup Opsimysql --user=user_name --password=your_password db_name5 membaca opsi dari yang berikut dari file opsi Cara Menentukan Protokol Yang Akan Digunakan Saat Menghubungkan ke Server mysqldAnda dapat memaksa protokol mana yang akan digunakan untuk terhubung ke server mysql db_name < script.sql > output.tab4 dengan memberikan opsi mysql db_name < script.sql > output.tab5 salah satu dari nilai berikut. mysql db_name < script.sql > output.tab6, mysql db_name < script.sql > output.tab7, mysql db_name < script.sql > output.tab8 atau mysql db_name < script.sql > output.tab9 Jika mysql db_name < script.sql > output.tab_5 tidak ditentukan, sebelum MariaDB 10. 6. 1, properti koneksi baris perintah yang tidak memaksa protokol diabaikan Dari MariaDB 10. 6. 1, properti koneksi yang ditentukan melalui baris perintah (mis. g. mysql_1) akan memaksa tipenya. Protokol yang cocok dengan properti koneksi masing-masing digunakan, mis. g. koneksi TCP/IP dibuat saat mysql2 ditentukan Jika beberapa atau tidak ada properti koneksi ditentukan melalui baris perintah, maka hal berikut akan terjadi Linux/Unix
Perhatikan bahwa mysql_5 adalah nilai khusus. Menggunakan 127. 0. 0. 1 bukanlah hal yang sama. Yang terakhir akan terhubung ke server mysqld melalui TCP/IP Windows
Cara Menguji Protokol Yang DigunakanPerintah shell> ln -s /dev/null $HOME/.mysql_history_1 menampilkan informasi tentang protokol mana yang digunakan shell> mysql test Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 10 Server version: 10.2.2-MariaDB-valgrind-max-debug Source distribution Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [test]> status; -------------- mysql Ver 15.1 Distrib 10.0.25-MariaDB, for Linux (x86_64) using readline 5.2 Connection id: 10 Current database: test Current user: monty@localhost ... Connection: Localhost via UNIX socket ... UNIX socket: /tmp/mysql-dbug.sock Perintah mysqlAda juga sejumlah perintah yang dapat dijalankan di dalam klien. Perhatikan bahwa semua perintah teks harus di baris pertama dan diakhiri dengan ';' File mysql_historyDi Unix, klien mysql menulis catatan pernyataan yang dieksekusi ke file riwayat. Secara default, file ini bernama shell> ln -s /dev/null $HOME/.mysql_history2 dan dibuat di direktori home Anda. Untuk menentukan file yang berbeda, setel nilai variabel lingkungan MYSQL_HISTFILE Itu. file mysql_history harus dilindungi dengan mode akses restriktif karena informasi sensitif mungkin dituliskan padanya, seperti teks pernyataan SQL yang berisi kata sandi Jika Anda tidak ingin mempertahankan file riwayat, hapus terlebih dahulu. mysql_history jika ada, lalu gunakan salah satu teknik berikut
shell> ln -s /dev/null $HOME/.mysql_history Anda perlu melakukan ini hanya sekali perintah cepatPerintah prompt mengkonfigurasi ulang prompt default shell> ln -s /dev/null $HOME/.mysql_history3. String untuk menentukan prompt dapat berisi urutan khusus berikut Tips mysqlBagian ini menjelaskan beberapa teknik yang dapat membantu Anda menggunakan shell> ln -s /dev/null $HOME/.mysql_history4 secara lebih efektif Menampilkan Hasil Query Secara VertikalBeberapa hasil kueri jauh lebih mudah dibaca saat ditampilkan secara vertikal, bukan dalam format tabel horizontal biasa. Kueri dapat ditampilkan secara vertikal dengan mengakhiri kueri dengan \G alih-alih titik koma. Misalnya, nilai teks yang lebih panjang yang menyertakan baris baru seringkali lebih mudah dibaca dengan output vertikal mysql> SELECT * FROM mails WHERE LENGTH(txt) < 300 LIMIT 300,1\G *************************** 1. row *************************** msg_nro: 3068 date: 2000-03-01 23:29:50 time_zone: +0200 mail_from: Monty reply: [email protected] mail_to: "Thimble Smith" sbj: UTF-8 txt: >>>>> "Thimble" == Thimble Smith writes: Thimble> Hi. I think this is a good idea. Is anyone familiar Thimble> with UTF-8 or Unicode? Otherwise, I´ll put this on my Thimble> TODO list and see what happens. Yes, please do that. Regards, Monty file: inbox-jani-1 hash: 190402944 1 row in set (0.09 sec) Untuk pemula, opsi startup yang berguna adalah shell> ln -s /dev/null $HOME/.mysql_history5 (atau shell> ln -s /dev/null $HOME/.mysql_history6, yang memiliki efek yang sama). Akan sangat membantu untuk kasus-kasus ketika Anda mungkin telah mengeluarkan pernyataan shell> ln -s /dev/null $HOME/.mysql_history7 tetapi melupakan klausa shell> ln -s /dev/null $HOME/.mysql_history8. Biasanya, pernyataan seperti itu menghapus semua baris dari tabel. Dengan shell> ln -s /dev/null $HOME/.mysql_history_5, Anda dapat menghapus baris hanya dengan menentukan nilai kunci yang mengidentifikasinya. Ini membantu mencegah kecelakaan Saat Anda menggunakan opsi shell> ln -s /dev/null $HOME/.mysql_history_5, mysql mengeluarkan pernyataan berikut saat terhubung ke server MariaDB SET sql_safe_updates=1, sql_select_limit=1000, sql_max_join_size=1000000; Pernyataan SET memiliki efek sebagai berikut
UPDATE tbl_name SET not_key_column=val WHERE key_column=val; UPDATE tbl_name SET not_key_column=val LIMIT 1;
Untuk menentukan batas yang berbeda dari 1.000 dan 1.000.000, Anda dapat mengganti default dengan menggunakan opsi mysql> SELECT * FROM mails WHERE LENGTH(txt) < 300 LIMIT 300,1\G *************************** 1. row *************************** msg_nro: 3068 date: 2000-03-01 23:29:50 time_zone: +0200 mail_from: Monty reply: [email protected] mail_to: "Thimble Smith" sbj: UTF-8 txt: >>>>> "Thimble" == Thimble Smith writes: Thimble> Hi. I think this is a good idea. Is anyone familiar Thimble> with UTF-8 or Unicode? Otherwise, I´ll put this on my Thimble> TODO list and see what happens. Yes, please do that. Regards, Monty file: inbox-jani-1 hash: 190402944 1 row in set (0.09 sec)4 dan mysql> SELECT * FROM mails WHERE LENGTH(txt) < 300 LIMIT 300,1\G *************************** 1. row *************************** msg_nro: 3068 date: 2000-03-01 23:29:50 time_zone: +0200 mail_from: Monty reply: [email protected] mail_to: "Thimble Smith" sbj: UTF-8 txt: >>>>> "Thimble" == Thimble Smith writes: Thimble> Hi. I think this is a good idea. Is anyone familiar Thimble> with UTF-8 or Unicode? Otherwise, I´ll put this on my Thimble> TODO list and see what happens. Yes, please do that. Regards, Monty file: inbox-jani-1 hash: 190402944 1 row in set (0.09 sec)5 mysql --safe-updates --select_limit=500 --max_join_size=10000 Menonaktifkan koneksi ulang otomatis mysqlJika klien mysql kehilangan koneksi ke server saat mengirim pernyataan, segera dan secara otomatis mencoba menyambung kembali ke server dan mengirim pernyataan itu lagi. Namun, meskipun mysql berhasil menyambungkan kembali, koneksi pertama Anda telah berakhir dan semua objek dan pengaturan sesi sebelumnya hilang. tabel sementara, mode autocommit, dan variabel yang ditentukan pengguna dan sesi. Juga, setiap transaksi saat ini dibatalkan. Perilaku ini mungkin berbahaya bagi Anda, seperti dalam contoh berikut di mana server dimatikan dan dimulai ulang antara pernyataan pertama dan kedua tanpa Anda sadari mysql --user=user_name --password=your_password db_name0 Variabel @a user telah hilang dengan koneksi, dan setelah koneksi ulang itu tidak terdefinisi. Jika penting untuk menghentikan mysql dengan kesalahan jika koneksi terputus, Anda dapat memulai klien mysql dengan opsi mysql> SELECT * FROM mails WHERE LENGTH(txt) < 300 LIMIT 300,1\G *************************** 1. row *************************** msg_nro: 3068 date: 2000-03-01 23:29:50 time_zone: +0200 mail_from: Monty reply: [email protected] mail_to: "Thimble Smith" sbj: UTF-8 txt: >>>>> "Thimble" == Thimble Smith writes: Thimble> Hi. I think this is a good idea. Is anyone familiar Thimble> with UTF-8 or Unicode? Otherwise, I´ll put this on my Thimble> TODO list and see what happens. Yes, please do that. Regards, Monty file: inbox-jani-1 hash: 190402944 1 row in set (0.09 sec)6 Bagaimana cara mengubah prompt di MySQL?Anda dapat menyetel prompt dalam beberapa cara. . Gunakan variabel lingkungan. Anda dapat mengatur variabel lingkungan MYSQL_PS1 ke string prompt. . Gunakan opsi baris perintah. Anda dapat mengatur opsi --prompt pada baris perintah ke mysql. . Gunakan file opsi. . Atur prompt secara interaktif Bagaimana cara menggunakan command prompt untuk MySQL?Buka alat baris perintah mysql. . Di Prompt Perintah Windows, jalankan perintah. mysql -u namapengguna -p Masukkan kata sandi Anda saat diminta Apa klien untuk MySQL terhubung dari command prompt? klien baris perintah mysql biasanya terletak di direktori bin folder instalasi MySQL. Jika program mysql sudah ada di PATH , Anda cukup menjalankannya menggunakan perintah mysql. -u root berarti Anda terhubung ke Server MySQL menggunakan root akun pengguna.
Perintah mana yang digunakan untuk beralih ke database tertentu di MySQL?PILIH Basis Data digunakan di MySQL untuk memilih basis data tertentu untuk digunakan. Kueri ini digunakan ketika beberapa database tersedia dengan MySQL Server. Anda dapat menggunakan perintah SQL USE untuk memilih database tertentu. |