ターミナルからmysqlコマンドを実行する方法は?


23

私は通常、データベースを選択してphpmyadminで実行し、コマンドウィンドウで実行する次のsqlコマンドを持っています。

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

ただし、これまでに端末経由でこれを行ったことはありません。私の質問は、このコマンドを特定のデータベースに「ポイント」してから実行する方法です。


1
試してくださいmysql -u root -p
ミッチ

1
MySQLにログインせずにコマンドを実行するにはどうすればよいですか?最初にターミナルでMySQL usernamepasswordEg を使用してログインする必要があります。mysql -uroot -p次に、ログインしてからデータベースを選択し、use <yourdatabasenameこのコマンドを実行できます。
Sauravクマー

次のようにデータベースをテーブルの前に置くこともできますDELETE FROM {databasename}.wp_posts WHERE 。post_type` = "attachment" `
Rinzwind

関連する質問もご覧ください:askubuntu.com/q/1077725/295286
Sergiy Kolodyazhnyy

回答:


33

ターミナルから実行するには、最初にmysqlにログインしてからプログラムを実行する必要があります。理想的なコードは

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

これがうまくいくと確信しています。


2
通常の端末から実行する場合は、\を使用してバック
ティック

13

mySQLのユーザー名を忘れたと思います。そのため、mysqlコマンドを入力するときに正しいユーザー名とパスワードを入力してください。例えば

$ mysql   -u  root   -p 
Enter Password:

注:デフォルトのユーザー名とパスワードは root


1
デフォルトのルートのアクセスにはsudoが必要ですsudo mysql -u root -p
Peter Krauss

デフォルトのルートのアクセスにはsudoが必要ですsudo mysql -u root -p
Peter Krauss

9

ターミナルで次のコマンドを入力して、mysqlインタープリターを使用します。

mysql -u root -p  database_name

パスワードを入力すると、mysqlコマンドを実行できます。

別の方法は以下を使用することです:

mysql -u root -p  database_name << eof
DELETE FROM `wp_posts` WHERE` post_type` = "attachment"
eof

4

これを試して:

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

1

MySQL CLIクライアントを使用します。

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

-uユーザー名とユーザー名を使用していますが、-p何も設定していません。MySQLはパスワードを要求します。

インラインで使用しようとしている場合は、使用することができます

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

ここで、-e引数も使用していることに注意してください。executeの略です。

プロのヒント

MySQLクライアントでは、次を使用できます。

mysql> show databases;

サーバー内のすべてのダバターゼを表示する場合。そして、あなたは使用することができます:

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

すべてのテーブルをデータベースに表示する場合。

$mysql>をプロンプトとして使用しているのは、$Linuxターミナルとmysql>MySQLクライアントを意味します。


-1

Linux UbuntuターミナルでMySQLを実行するための一連の手順があります。

  1. 次のコマンドを使用してMySQLクライアントを実行します。 mysql -u root -p
  2. 次のコマンドを使用して、最初に新しいデータベースを作成することが重要です。 create database demo_db;
  3. 次に、次のコマンドを使用してデータベースを認証する必要があります。 grant all on demo_db.* to ‘testuser’ identified by ‘12345’;
  4. 次に、次のコマンドを使用してデータベース自体からログインします。 mysql -u testuser -p
  5. その後、実際のSQLコマンドから実際に開始できます。

私は記事http://www.codingalpha.com/run-mysql-database-linux-ubuntu/を参照し、Linux UbuntuでMySQLを実行するための完璧な手順を説明しました!MySQLが完璧に動作することを願っています。


1
これmysqlはクライアントであり、サーバーではないことに注意してください。クライアントを起動する前に、発行してサーバーが実行されていることsudo status mysqlを確認し、実行されていない場合はで起動しsudo start mysqlます。
ガス

-2

基本的には「SELECT databasename;」でした。その後、コマンドを実行します。


1
また、コマンドラインでデータベース名を指定することもできます。たとえばmysql -u root -p databasename、プロンプトが表示されたときにパスワードを入力し、データベースを使用しています。
デビッドパーデュー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.