mysqlにログインし、linuxターミナルからデータベースをクエリする方法


104

私はdebian linuxを使用しています。mysqlがインストールされているLinuxマシンがあります。rootユーザーと他のユーザーを使用してLinuxマシンにログインできます。sqlyogを使用して、WindowsマシンからLinuxマシンのmysqlデータベースに接続できます。Linuxターミナルを使用してLinuxマシンでのみクエリを実行したい

端末で次のことを試しました

ルートディレクトリに移動してから、/ var / libディレクトリに移動しました

端末で次のコマンドを実行します

mysqladmin -u root -p
mysqladmin -u root -ppassword

次のエラーメッセージが表示されるたび

エラー1045(28000)ユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードNOを使用)

私をフォローしてください

  1. Linuxターミナルでmysqlプロンプトを取得するにはどうすればよいですか?
  2. mysqlサーバーをLinux端末から停止するにはどうすればよいですか?
  3. mysqlサーバーをLinux端末から起動するにはどうすればよいですか?
  4. Linuxターミナルでmysqlプロンプトを取得するにはどうすればよいですか?
  5. Linux端末からmysqlサーバーにログインするにはどうすればよいですか?
  6. 次のエラーを解決するにはどうすればよいですか?

エラー1045(28000)ユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードNOを使用)

上記の質問に対する解決策を教えてください。ありがとうございました


1
このコマンドmysql -u root -pを実行すると、パスワードは要求されず、エラーメッセージ「ERROR 1045(28000)Access denied for user 'root' @ 'localhost'(Using password NO)」が表示されます。ルートフォルダーで上記のコマンドルートプロンプトを実行するか、特定のディレクトリに移動する必要がありますか?その道を教えてください。ありがとうございました!
Param-Ganak

コマンドの構文を次のように変更してみてください: "mysql --user = root --password"(コマンドラインで入力するときに引用符を削除します)。そうでなければ、パスワードの入力を求められないのはかなり奇妙に思われ、mysqlのスコープ外で何か他のことが起こっているのではないかと思います。
バラブーム

回答:


180

1.- Linuxターミナルでmysqlプロンプトを取得するにはどうすればよいですか?

mysql -u root -p

Enter password:プロンプト、よく、rootのパスワードを入力してください:)

入力するmysql --helpか、オンラインマニュアルで詳細を参照できます。

2. Linux端末からmysqlサーバーを停止するにはどうすればよいですか?

場合によります。Red Hatベースのディストリビューションには次のserviceコマンドがあります。

service mysqld stop

他のディストリビューションでは、initスクリプトを直接呼び出す必要があります。

/etc/init.d/mysqld stop

3. Linux端末からmysqlサーバーを起動するにはどうすればよいですか?

#2と同じstartですが、。

4. Linuxターミナルでmysqlプロンプトを取得するにはどうすればよいですか?

#1と同じ。

5. Linux端末からmysqlサーバーにログインするにはどうすればよいですか?

#1と同じ。

6.次のエラーを解決するにはどうすればよいですか?

#1と同じ。


10

最初の質問へ:

mysql -u root -p

または

mysqladmin -u root -p "your_command"

何をしたいかに応じて。Enterキーを押すとパスワードが要求されます!あなたは本当にmysqladminではなくmysqlを使いたいと思います。

LinuxでのMySQLサーバーの再起動または停止は、インストールに依存しますが、一般的なdebian派生物では、これはサービスの開始、停止、再起動で機能します。

sudo /etc/init.d/mysql start
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart
sudo /etc/init.d/mysql status

一部の新しいディストリビューションでは、MySQLがデーモン/サービスとして設定されている場合、これは同様に機能する可能性があります。

sudo service mysql start
sudo service mysql stop
sudo service mysql restart
sudo service mysql status

しかし、あなたの特定の設定を知らずに質問に答えることは本当に不可能です。


このコマンドmysql -u root -pを実行すると、パスワードは要求されず、エラーメッセージ「ERROR 1045(28000)Access denied for user 'root' @ 'localhost'(Using password NO)」が表示されます。ルートフォルダーで上記のコマンドルートプロンプトを実行するか、特定のディレクトリに移動する必要がありますか。パスを教えてください。ありがとう
Param-Ganak

特定のディレクトリに移動する必要はありません。どこからでも実行できます。あなたはへの応答を貼り付けることができuname -aし、mysql --version及び(ちょうどターミナルにそれらを入力してください)ここに貼り付けます。私たちはおそらくあなたにもっと助けを与えることができます。service mysql statusまた参考になります。
flindeberg、2011年

5

私はあなたがmysqlクライアントの使用を検討していることを想定しています。

コマンドラインクライアントでログインする適切な方法は、次のように入力することです。

mysql -u username -p

パスワードを入力しなかったことに注意してください。そうすると、パスワードが画面に表示されてしまい、マルチユーザー環境では良くありません!

このヒットのEnterキーを入力すると、mysqlはパスワードを要求します。

ログインしたら、もちろん次のものが必要です。

use databaseName;

何をするにも。

幸運を。


このコマンドmysql -u root -pを実行すると、パスワードは要求されず、エラーメッセージ「ERROR 1045(28000)Access denied for user 'root' @ 'localhost'(Using password NO)」が表示されます。ルートフォルダーで上記のコマンドルートプロンプトを実行するか、特定のディレクトリに移動する必要がありますか?その道を教えてください。ありがとうございました!
Param-Ganak

どのLinuxディストリビューションを実行していますか?
stefgosselin

5

コマンドプロンプトで次のことを試してください。

mysql -u root -p

プロンプトが表示されたらパスワードを入力します。


このコマンドmysql -u root -pを実行すると、パスワードは要求されず、エラーメッセージ「ERROR 1045(28000)Access denied for user 'root' @ 'localhost'(Using password NO)」が表示されます。ルートフォルダーで上記のコマンドルートプロンプトを実行するか、特定のディレクトリに移動する必要がありますか?その道を教えてください。ありがとうございました!
Param-Ganak

パスが設定されている限り、ホームディレクトリから実行できるはずです。動作するはずです
quarkonium

4

今日、ArchLinux VPSでもまったく同じ問題が発生しました。

mysql -u root -pうまくいきませんでしたが、mysql -u root -pmypasswordうまくいきました。

/ dev / ttyデバイスファイルが壊れていることが判明したため(おそらくudevのアップグレード後)、mysqlはそれをインタラクティブログインに使用できませんでした。

私はは/ dev / ttyのとでそれを再作成を削除してしまったmknod /dev/tty c 5 1chmod 666 /dev/tty。これにより、mysqlの問題と他のいくつかの問題も解決されました。


これは実際に機能します!これで誰もがbash_historyでrootパスワードを見ることができます。:/ / dev / ttyがめちゃくちゃになっていることをどうやって知ったのですか?
user3870315

2

ほとんどのLinuxシステムでmysqlを停止または開始するには、以下が機能するはずです。

/etc/init.d/mysqld stop

/etc/init.d/mysqld start

他の回答は、コマンドラインからmysqlクライアントにアクセスするのに適しています。

幸運を!


2
  1. mysqlコマンドを使用する必要があります。これはmysql RDBMSのコマンドラインクライアントであり、ほとんどのmysqlインストールに付属しています。http//dev.mysql.com/doc/refman/5.1/en/mysql.html

  2. mysqlデータベースを停止または起動するには(「手動」で実行する必要があることはめったにありません)、適切なinitスクリプトをstopまたはstartパラメータで、通常は使用し/etc/init.d/mysql stopます。ただし、これはLinuxディストリビューションによって異なります。いくつかの新しいディストリビューションはservice mysql startスタイルを奨励しています。

  3. mysqlSQLシェルを使用してログインしています。

  4. エラーはおそらく、 '-p'パラメータが2つあるためです。パスワードを入力することも-ppassword、単に-p入力するだけでもかまいません。インタラクティブにパスワードを要求されます。また、一部のインストールでは、mysql(rootではない)ユーザーが管理ユーザーとして使用される場合があることに注意してください。sqlyog構成を確認して、有効な接続パラメーターを取得します。



2

Ubuntuで実行する必要があるのsudo mysqlはGNOME端末だけで、それだけです。データベースの作成を開始したり、テーブル内のデータをクエリしたりできます。


1

uがまだdbにアクセスできない場合、1。urエラーメッセージにパスワードが設定されていませんか?次に、最初にmysqlpasswd 'username'を実行してから、要求に応じてパスワードタイプをもう一度入力し、ルートである場合はmysql -pを使用して再度アクセスを試みます。


1

rootとしてすでにログインしている場合

mysql -u root

そうでない場合、パスワードのプロンプトはエラーとして返されます


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.