42

xamppをインストールしたばかりで、コマンドラインを使用してmySQLを記述しています。パスワードなしで「root」を使用しており、mysql に接続できますCREATE DATABASEが、エラーが発生するため接続できません1044 access denied for user '' @ 'localhost'。としてログインしてい-urootます。

私はphpMyadminでやりたいことをする権限を持っていますが、コマンドラインでは書き込み権限がないようです。このトピックに関する他のすべての関連記事を見てきましたが、役に立ちませんでした。とにかく権限がないので、権限を付与できません。

4

9 に答える 9

73

root として MySQL にログインしていますか? MySQL ルートとしてログインしているときに、「通常の」MySQL ユーザー アカウントに権限を明示的に付与する必要があります。

まず、MySQL データベースのルート アカウントを設定します。

ターミナルタイプで:

mysqladmin -u root password 'password'

MySQL にログインするには、次を使用します。

mysql -u root -p

権限を手動で設定するには、skip-grant-tables オプションを使用してサーバーを起動し、mysql クライアントを開き、mysql.user テーブルおよび/または mysql.db テーブルを手動で更新します。ただし、これは面倒な作業になる可能性があるため、すべての権限を持つアカウントが必要な場合は、次のようにします。

skip-grant-tablesオプションでサーバーを起動します

mysql クライアントを起動します (ユーザー名/パスワードなし)

コマンドを発行する

flush privileges;

これにより、付与テーブルが強制的にロードされます。

このような GRANT コマンドで新しいアカウントを作成します (ただし、ユーザー名とパスワードは使いたいものに置き換えてください。

GRANT ALL on *.* to 'username'@'localhost' identified by 'password';

サーバーを通常モード (skip-grant-tables なし) で再起動し、新しく作成したアカウントでログインします。

このMySQL ドキュメントを参照してください。

于 2012-08-02T09:14:32.220 に答える
13

C:\xampp\mysql\bin\ に移動し、ファイル mysql.exe がそのフォルダーにあることを確認します。

mysql -uroot -p

パスワードを持っていない場合は、Enter キーを押してください。

プロンプトが次のように変わります

mysql>

あなたのmysqlコマンドを実行します

于 2012-08-01T13:42:49.647 に答える
6

デフォルトでは、XAMPP の root ユーザーにはパスワードが設定されていません。

MySQL の root ユーザーのパスワードを設定できます。

案内する

ローカルホスト:80/security/index.php

root ユーザーのパスワードを設定します。

注: Apache が別のポートにある場合は、上記の URL のポート番号を変更してください。

XAMPPコントロールパネルを開く 「シェル」ボタンをクリック

コマンドプロンプトウィンドウがそのウィンドウタイプで開きます

mysql -u root -p;

root ユーザーに設定したパスワードを入力するよう求められます。

root ユーザーとしてログインした状態です :D では、やりたいことを実行してください :P

于 2013-10-12T15:17:47.310 に答える
4

MariaDB 10 データベース サーバーにアクセスする

データベース サーバーを停止した後、次のステップは、データベース サーバーを起動し、ネットワークと権限テーブルをスキップして、バックドアを介してサーバーにアクセスすることです。これは、以下のコマンドを実行することで実行できます。

sudo mysqld_safe --skip-grant-tables --skip-networking &

MariaDB ルート パスワードのリセット

データベース サーバーがセーフ モードで起動されたので、次のコマンドを実行して、パスワード プロンプトなしで root としてログオンします。これを行うには、以下のコマンドを実行します

sudo mysql -u root

次に、以下のコマンドを実行して mysql データベースを使用します。

use mysql;

最後に、以下のコマンドを実行して root パスワードをリセットします。

update user set password=PASSWORD("new_password_here") where User='root';

new_password _hereを root アカウント用に作成する新しいパスワードに置き換えて、Enter キーを押します。

その後、以下のコマンドを実行して権限を更新し、変更をディスクに保存します。

flush privileges;

終了 (CTRL + D) すると完了です。

次に、MariaDB を通常どおり起動し、作成したばかりの新しいパスワードをテストします。

sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service

以下のコマンドを実行して、データベースにログオンします。

sudo mysql -u root -p

ソース: https://websiteforstudents.com/reset-mariadb-root-password-ubuntu-17-04-17-10/

于 2018-10-22T15:11:28.037 に答える
0

ODBC コネクタ msi を再インストールし、mySQL を (xampp とは別に) 直接再インストールしたところ、動作するようになりました。SHOW DATABASES が実際にはデータベースをまったく表示していなかったので、これはコネクタの問題だったと思います。

私の「ルート」ログインは DB にアクセスできなかったため、権限が制限されているように見えましたが、実際には適切に接続されていませんでした。

于 2012-08-02T11:26:27.280 に答える
0

サーバーファイルのみ名前変更フォルダ

etc/mysql
rename
mysql-
于 2016-03-30T05:35:58.083 に答える
-2

-uとユーザー名の間にスペース文字を入れてはいけません:

mysql -uroot -p
# or
mysql --user=root --password
于 2012-08-01T13:36:35.673 に答える