ホームページ >データベース >mysql チュートリアル >Ubuntu 04 に SQL サーバーをインストールする方法のステップバイステップ ガイド
まずデスクトップを更新し、SQL サーバーをインストールします
sudo apt-get update sudo apt-get install mysql-server
次のコマンドを使用して、サーバーが実行されていることを確認します
sudo systemctl start mysql.service sudo systemctl status mysql.service
結果は次のようになります:
Ubuntu ではデフォルトで認証が無効になっているため、Ubuntu マシンでインストールを実行している場合は、root アカウントのパスワードを設定する必要があります。エラーを避けるために、root アカウントの認証方法を設定する必要があります
sudo mysql
ALTER USER を使用して root のパスワードを変更します:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
この変更を行った後終了します
mysql> exit
サーバーを保護するには、次のコマンドを実行してパスワード ポリシーを設定する必要があります
sudo mysql_secure_installation
指定されたパスワード ポリシーは、作成される後続のユーザー アカウントに適用されます。
次に、root ユーザーのパスワードを使用して認証します。
mysql -u root -p
このコマンドにより、root ユーザーに MySQL cli へのアクセス権が与えられ、MySQL サーバーと直接対話できるようになります。
次に、次のコマンドを使用してデフォルトの認証方法の使用に戻ります:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
これにより、sudo mysql コマンドを使用して再度接続できるようになります。
root アカウントを使用してデータベースに対して日常的なアクションを実行するのは、OpSec として不適切です。最善のオプションは、権限が制限されたユーザー アカウントを作成することです。
これを行うには、まず次のコマンドを使用して root としてログインします。
sudo mysql
以前に root アカウントのパスワードを設定している場合は、代わりにこれを使用します:
mysql -u root -p
次に新しいユーザーを作成します:
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH authentication_plugin BY 'password';
コマンドを入力したら、プロンプトに従ってユーザー名、ホスト名 (Ubuntu を使用している場合は localhost) を入力します。
認証には、パスワードを必要とせずに文字列セキュリティを提供する auth_socket プラグインを使用するオプションがありますが、リモート接続を防ぐという欠点があります。authentication_plugin プラグイン、デフォルトの MySQL プラグインである caching_sha2_password ですが、その欠点は、 PHP は、PHP または mysql_native_password プラグインと互換性がありません。
mysql> CREATE USER 'jack'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
以下を使用して既存のユーザーを変更することもできます。
mysql> ALTER 'jack'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
ユーザーを作成した後、次の構文を使用して権限を割り当てることができます。
mysql> GRANT PRIVILEGE ON database.table TO 'username'@'host';
代わりに GRANT ALL PRIVILEGES を使用すると、root と同様のスーパーユーザー権限がユーザーに与えられます。このようなフラグを立てないと、root から別のユーザー アカウントを作成するという目的が無効になります。
PRIVILEGE 変数は、ユーザーが実行できるアクションを表します。グローバル権限は、database.table を *.
に置き換えることによって付与することもできます。以下では、CREATE、ALTER、DROP、INSERT、SELECT、UPDATE、DELETE をそれぞれ使用して、テーブルのデータを作成、変更、削除、挿入、選択、更新、削除する権限をユーザーに付与します。
mysql> GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT on *.* TO 'jack'@'hostname' WITH GRANT OPTION;
WITH GRANT OPTION フラグを使用すると、ユーザーは自分が持つ権限を他のユーザーに付与できます。
次に、FLUSH PRIVILEGES コマンドを使用してキャッシュを空にし、メモリを解放します。
mysql> FLUSH PRIVILEGES;
MySQL CLI を終了できた後
mysql> exit
資格情報を使用して再度ログインできるようになりました
mysql -u jack -p
次のコマンドを使用して、MySQL サーバーが実行されていることを確認できます:
systemctl status mysql.service
また、管理コマンド ツール mysqladmin を使用して MySQL データベースに接続することもできます。
sudo mysqladmin -p -u jack version
以上がUbuntu 04 に SQL サーバーをインストールする方法のステップバイステップ ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。