説明
CREATE USER ステートメントは、OceanBaseデータベースの新しいユーザーを作成するために使用されます。新しいユーザーを作成した後、そのユーザーを使用してOceanBaseデータベースに接続できます。
権限要件
CREATE USER ステートメントを実行してユーザーを作成するには、現在のユーザーがグローバルなCREATE USER権限を持っている必要があります。OceanBaseデータベースの権限の詳細については、MySQLモードの権限分類を参照してください。
構文
CREATE USER [IF NOT EXISTS] {user [, user...]}
[REQUIRE {NONE | SSL | X509 | tls_option}]
[WITH resource_option [resource_option...]];
user:
user_name
| user_name IDENTIFIED [WITH auth_plugin] BY password
| user_name IDENTIFIED [WITH auth_plugin] BY PASSWORD password
| user_name IDENTIFIED [WITH auth_plugin] AS PASSWORD 'auth_string'
tls_option:
CIPHER cipher_name
| ISSUER issuer_name
| SUBJECT subject_name
resource_option:
MAX_CONNECTIONS_PER_HOUR integer
| MAX_USER_CONNECTIONS integer
パラメータの説明
| パラメータ | 説明 |
|---|---|
| IF NOT EXISTS | ユーザー名が既に存在する場合、作成を行わないように指示します。ユーザー作成時に、作成しようとしているユーザー名が既に存在し、かつIF NOT EXISTSが指定されていない場合、エラーが報告されます。 |
| user_name | ユーザー名。新規ユーザー作成後、mysql.userテーブルにそのユーザーのエントリが追加されます。複数のユーザーを同時に作成する場合は、英字のカンマ(,)で区切ります。 |
| auth_plugin | ユーザー認証方式を指定します。現在、mysql_native_password認証プラグインのみサポートされています。 |
| IDENTIFIED BY password | 作成予定のユーザーにパスワードを設定します。ここでのパスワードは平文であり、mysql.userテーブルに保存された後、サーバー側で暗号化されます。パスワードに特殊文字~!@#%^&*_-+=`|(){}[]:;',.?/が含まれる場合は、英字の引用符('または")で囲む必要があります。 |
| IDENTIFIED BY PASSWORD password | 作成予定のユーザーにパスワードを設定します。ここでのパスワードは暗号化されており、直接mysql.userテーブルに保存されます。 |
| IDENTIFIED AS PASSWORD | アカウント認証プラグインをauth_pluginに設定し、auth_string値をmysql.userテーブルに保存します。プラグインがハッシュ文字列を必要とする場合、その文字列はすでにプラグインが必要とするハッシュ形式であると仮定されます。 |
| REQUIRE | ユーザーのパスワード検証要件を指定します。以下の値があります。
|
| tls_option | TLS要件の具体的なオプションを指定します。
|
| resource_option | ユーザーのリソースオプションを指定します。複数のリソースオプションを指定する場合は、英字のスペースで区切ります。
|
例
ユーザーtest1とtest2を作成し、平文パスワードとユーザーが許可される最大接続数を指定します。
obclient> CREATE USER IF NOT EXISTS test1 IDENTIFIED BY '********', test2 IDENTIFIED BY '********' WITH MAX_USER_CONNECTIONS 10;ユーザーtest3を作成し、暗号化パスワードを指定すると同時に、認証にSSL接続を使用することを必須とします。
obclient> CREATE USER IF NOT EXISTS test3 IDENTIFIED BY PASSWORD '********' REQUIRE SSL;ユーザーtest4を作成し、mysql_native_password認証プラグインを使用することを指定します。
obclient> CREATE USER IF NOT EXISTS test4 IDENTIFIED WITH mysql_native_password BY PASSWORD '********';
関連ドキュメント
ユーザーに権限を付与する操作については、権限の付与を参照してください。
mysql.userテーブルから作成されたユーザー情報を確認できます。mysql.userテーブルの詳細については、mysql.userを参照してください。作成したユーザーを使用してOceanBaseデータベースに接続する操作については、OceanBaseデータベースへの接続の章を参照してください。