Bagaimana cara menjalankan perintah mysql dari terminal?

23

Saya memiliki perintah sql berikut yang biasanya saya jalankan di phpmyadmin dengan memilih database, kemudian menjalankannya di jendela perintah.

DELETE FROM `wp_posts` WHERE `post_type` = "attachment"

Namun saya belum pernah melakukan ini melalui terminal sebelumnya. Pertanyaan saya adalah, bagaimana saya "mengarahkan" perintah ini ke database tertentu dan kemudian menjalankannya?

jc.yin
sumber
1
Coba mysql -u root -p.
Mitch
1
Bagaimana Anda bisa menjalankan perintah apa pun tanpa login ke MySQL? Pertama di terminal Anda harus login menggunakan MySQL usernamedan passwordEg: mysql -uroot -pkemudian setelah login pilih basis data Anda menggunakan use <yourdatabasenamemaka Anda dapat menjalankan perintah ini.
Saurav Kumar
Anda juga dapat meletakkan database di depan tabel seperti ini: DELETE FROM {databasename}.wp_posts WHERE post_type` = "attachment" `
Rinzwind
Lihat juga pertanyaan terkait: askubuntu.com/q/1077725/295286
Sergiy Kolodyazhnyy

Jawaban:

33

Agar Anda dapat menjalankannya dari terminal, Anda harus masuk ke mysql terlebih dahulu dan kemudian Anda menjalankan program Anda. Kode yang ideal adalah

mysql -u(username) -p(password) (the name of the database) -e "DELETE FROM `wp_posts` WHERE `post_type` = "attachment""

Saya yakin ini berfungsi, semoga membantu

sosytee
sumber
2
Anda perlu melarikan diri dari backticks menggunakan \ jika mengeksekusi dari terminal normal
myol
13

Saya pikir Anda lupa nama pengguna Anda untuk mySQL. jadi tolong masukkan nama pengguna dan kata sandi yang benar saat Anda mengetik perintah mysql. untuk misalnya

$ mysql   -u  root   -p 
Enter Password:

Catatan: Nama pengguna dan kata sandi default adalah root

Ashish Saini
sumber
1
Akses root default perlu sudo,sudo mysql -u root -p
Peter Krauss
Akses root default perlu sudo,sudo mysql -u root -p
Peter Krauss
9

Cukup ketik perintah berikut di terminal untuk menggunakan penerjemah mysql:

mysql -u root -p database_name

Masukkan kata sandi Anda, lalu Anda dapat menjalankan perintah mysql Anda.

Cara lain adalah dengan menggunakan:

mysql -u root -p database_name << eof
HAPUS DARI `wp_posts` WHERE` post_type` = "attachment"
eof
Radu Rădeanu
sumber
4

Coba ini:

mysql --host *HOST_IP* --user *USER* --password=*PASSWORD* -D *DATABASE_NAME* -e "DELETE FROM `wp_posts` WHERE `post_type` = "attachment" ;
tej18
sumber
1

Menggunakan klien MySQL CLI.

$ mysql -u <user> -p
mysql> use <your-database>
mysql> DELETE FROM `wp_posts` WHERE `post_type` = "attachment"

Perhatikan bahwa saya menggunakan -udan nama pengguna, tetapi -psaya tidak mengatur apa pun. MySQL akan menanyakan kata sandi Anda.

Dan jika Anda mencoba menggunakannya sebaris, Anda bisa menggunakannya

$ mysql -u <user> -p <your-database> -e "DELETE FROM `wp_posts` WHERE `post_type` = 'attachment'"

Di sini, perhatikan bahwa saya juga menggunakan -eargumen. Itu singkatan dari eksekusi .

Kiat pro

Di klien MySQL Anda dapat menggunakan:

mysql> show databases;

jika Anda ingin melihat semua data di server Anda. Dan Anda dapat menggunakan:

mysql> use <database>;
mysql> show tables;

jika Anda ingin melihat semua tabel ke dalam basis data.

Saya menggunakan $dan mysql>sebagai petunjuk, $berarti terminal Linux Anda, dan mysql>, klien MySQL.

Juanjo Salvador
sumber
-1

Ada serangkaian langkah untuk Menjalankan MySQL di Terminal Ubuntu Linux.

  1. Jalankan Klien MySQL menggunakan perintah berikut: mysql -u root -p
  2. Penting untuk Membuat Database Baru terlebih dahulu menggunakan perintah: create database demo_db;
  3. Maka Anda harus Mengotorisasi Database menggunakan perintah: grant all on demo_db.* to ‘testuser’ identified by ‘12345’;
  4. Kemudian Login dari Database itu sendiri menggunakan perintah: mysql -u testuser -p
  5. Kemudian, Anda benar-benar dapat mulai dengan Perintah SQL yang sebenarnya.

Saya merujuk ke artikel http://www.codingalpha.com/run-mysql-database-linux-ubuntu/ di mana mereka telah menjelaskan langkah-langkah sempurna untuk Menjalankan MySQL di Linux Ubuntu! Saya harap MySQL Anda berjalan dengan sempurna.

Parag Vidhate
sumber
1
Harap dicatat bahwa itu mysqladalah klien, dan bukan server. Sebelum memulai klien, periksa apakah server berjalan dengan mengeluarkan sudo status mysqldan jika tidak berjalan, mulailah dengan sudo start mysql.
Guss
-2

Oke pada dasarnya itu adalah "SELECT databasename;" kemudian jalankan perintah saya.

jc.yin
sumber
1
Anda juga dapat menentukan nama basis data pada baris perintah, seperti mysql -u root -p databasename- masukkan kata sandi saat diminta dan Anda menggunakan basis data.
David Purdue