L1.Mysql ユーザーの作成:
MySQL -User = Root mysqlMysql & GT; * にすべての権限を付与します。 * 'SometHing' H 付与オプション; GRANT OPTION 付きで 'something' によって識別された *.* にすべての権限を付与します mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;これらの GRANT ステートメントは 3 人の新しいユーザーをインストールします: monty どこからでもサーバーに接続できる完全なスーパーユーザーですが、これを行うにはパスワード「何か」を使用する必要があります。 monty@localhost と monty@"%" に対して GRANT ステートメントを発行する必要があることに注意してください。 localhost エントリを追加すると、localhost の匿名ユーザー エントリは、localhost から接続するときに mysql_install_db によって作成されたエントリよりも優先されます。これは、より具体的な Host フィールド値があり、ユーザー テーブルのソート順で前に表示されるためです。
admin
パスワードなしでローカルホストから接続でき、リロードおよびプロセスの管理者権限が付与されているユーザー。これにより、ユーザーは mysqladmin reload、mysqladmin reload、mysqladmin flash-* コマンドに加えて、mysqladmin processlist を実行できるようになります。データベース関連の権限は付与されていません。これらは、後で別の GRANT ステートメントを発行することで付与できます。
ダミー ユーザーはパスワードなしで接続できますが、ローカルホストからのみ接続できます。グローバル権限は「N」に設定されています。USAGE 権限タイプでは、権限なしでユーザーを設定できます。後でデータベース関連のアクセス許可を付与することを前提としています。mysql> INSERT INTO user (Host,User,Password) VALUES('server.domain' 、'custom',PASSWORD('stupid'));
mysql> INSERT INTO user (Host,User,Password) VALUES('whitehouse.gov','custom',PASSWORD('stupid'));
mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)
VALUES ('localhost','bankaccount','custom','Y','Y',' Y ','Y','Y','Y');
(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)
VALUES ( 'whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y');
mysql> データベースに挿入( Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)
[mysqld] セクションのどこかに次の行を追加します。
skip-grant-tables
それから、任意のユーザー名を使用できるように、それを保存して mysqld サービスを再起動します。 as super 管理者本体は MySQL サービスにログインします。
次に、mysql データベースに移動し、ユーザー テーブルを変更します:
さらに、このマシンまたは他のマシンから正常に使用できる MySql データベースが見つかった場合は、その mysql ライブラリ内の user という名前の関連ファイルをコピーして、データベース内の同じ名前のファイルを上書きすることもできますパスワードを忘れた場合は、コピーされる人のアカウントとパスワードを使用してログインすることもできます。
4. サーバーにリモートでアクセスできるように MySql アカウントを設定する方法
バージョン 5.0 では、実際には、root アカウントのパスワードを設定するときに、グラフィカル インターフェイス構成ウィザード ツールを選択できます。リモートアクセスからサーバーへのアクセスを許可するかどうか。デフォルトでは許可されていません。 コマンドラインでは、この設定を行うための 2 つの同様の方法があります: (1)mysql>GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;mysql> root@"%" への *.* に対する特権が許可オプション付きの 'something' によって識別されました;最初の文は、root ユーザーを追加して、パスワード「something」を使用してローカル マシン (localhost) を介してアクセスを許可します。
2 番目の文では、ワイルドカードを使用して、root ユーザーが他のホストから開始したアクセスを許可します。
(2) update ステートメントを直接使用してユーザー テーブルを変更することもできます。root ユーザーまたは他のユーザーを使用して mysql にログインし、mysql データベースに移動します。
update user set host='localhost' ここで、 user='root';
flush権限;//rootのみにこのマシンへのログインを許可します
update user set host='%' where user='root';
flush権限;//rootを許可しますリモート アクセス
上記は Add flash ステートメントである必要があることに注意してください。
さらに、新しいユーザーを作成する場合は、grant ステートメントを使用すると常に新しいユーザーが作成されることに注意してください。
5. MySql の 3306 ポートについて
サーバーに 5.0.18 を新規インストールしたときに、このポートを強制的に使用すると、3306 ポートが占有されていることがわかりました。接続されているデータベースのバージョンが 4.1.8 だったので、新しく作成されたサーバーにアクセスできません。その後、マシンに mysql サーバーのバージョン 4.1.8 がインストールされていることが判明しました。
この時点で、新しいバージョンのデータベースを再構成し、ポートを 3307 などの別のポートに設定する必要があります。その後、アクセスするときに、オプション --port=3307 を追加することでアクセスできます。 .net プログラムでは、接続文字列に port=3307 を追加する必要があります。
上記は MySQL アカウントに関連する内容です。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。