説明
このステートメントは、主に以下の操作を実行するために使用されます:
OceanBaseデータベースユーザーのパスワードを変更します。
ユーザーをロックまたはアンロックします。ロックされたユーザーはデータベースへのログインが許可されません。
説明
現在のユーザーパスワードを変更する場合を除き、このコマンドを実行するには
CREATE USER権限が必要です。ユーザーがログイン時にデフォルトで有効にするロールを設定します。
ユーザーのリソースオプションを変更します。
権限要件
ALTER USER ステートメントを実行するには、現在のユーザーが CREATE USER 管理権限を持っている必要があります。OceanBaseデータベースの権限の詳細については、MySQLモードの権限分類を参照してください。
構文
ユーザーパスワードの変更:
ALTER USER 'user_name' IDENTIFIED [WITH auth_plugin] BY 'password' | IDENTIFIED [WITH auth_plugin] AS 'auth_string'ユーザーパスワードの変更と現在のパスワードの保持(二重パスワードシナリオ、V4.4.2 BP1以降):
ALTER USER 'user_name' IDENTIFIED BY 'password' RETAIN CURRENT PASSWORD;保持された古いパスワードの破棄(V4.4.2 BP1以降):
ALTER USER 'user_name' DISCARD OLD PASSWORD;ユーザーのロック:
ALTER USER 'user_name' [ACCOUNT LOCK | ACCOUNT UNLOCK];ユーザーがログイン時にデフォルトで有効にするロールを設定します:
ALTER USER user_name DEFAULT ROLE {NONE | ALL | role_name [, role_name ...]};ユーザーのリソースオプションを変更します:
ALTER USER user_name WITH resource_option [resource_option]; resource_option: MAX_CONNECTIONS_PER_HOUR integer | MAX_USER_CONNECTIONS integer
パラメータ説明
パラメータ |
説明 |
|---|---|
| user_name | ユーザー名を指定します。 |
| password | 新しいパスワードを指定します。 |
| IDENTIFIED WITH auth_plugin AS 'auth_string' | アカウント認証プラグインを auth_plugin に設定し、auth_string の値を mysql.user テーブルに格納します。プラグインがハッシュ文字列を必要とする場合、その文字列が既にプラグインが必要とするハッシュ形式であると仮定します。
注意
|
| ACCOUNT LOCK | ユーザーのロックを指定します。 |
| ACCOUNT UNLOCK | ユーザーのアンロックを指定します。 |
| NONE | ユーザーが付与されたすべてのロールを無効にすることを指定します。 |
| ALL | ユーザーのすべてのロールを有効にすることを指定します。 |
| role_name | ロール名を指定します。複数のロールを有効にする場合は、ロール名を半角カンマ(,)で区切ります。 |
| resource_option | ユーザーのリソースオプションを指定します。複数のリソースオプションを指定する場合は、半角スペースで区切ります。
|
| RETAIN CURRENT PASSWORD | IDENTIFIED BY と組み合わせて使用します:新しいパスワードを設定しながら古いパスワードを保持し、二重パスワード状態にします。
説明この機能はV4.4.2 BP1バージョンからサポートされています。 |
| DISCARD OLD PASSWORD | 保持されていた古いパスワードを破棄し、現在のパスワードのみを保持します。
説明この機能はV4.4.2 BP1バージョンからサポートされています。 |
例
以下のコマンドを実行して、ユーザー
sqluser01のパスワードを******に変更します。obclient> ALTER USER 'sqluser01' IDENTIFIED BY '******';ユーザー
sqluser01のパスワードをNewSecretに変更し、パスワード変更前の古いパスワードを保持します(二重パスワード)。obclient> ALTER USER 'sqluser01'@'%' IDENTIFIED BY 'NewSecret' RETAIN CURRENT PASSWORD;ビジネス切り替え完了後、古いパスワードを破棄します。
obclient> ALTER USER 'sqluser01'@'%' DISCARD OLD PASSWORD;mysql_native_password認証プラグインの使用を指定します。
ALTER USER 'sqluser01' IDENTIFIED WITH mysql_native_password AS '******';caching_sha2_password認証プラグインの使用を指定します。
ALTER USER 'sqluser02' IDENTIFIED WITH caching_sha2_password BY '******';ユーザー
obsqluser01をロックします。obclient> ALTER USER 'obsqluser01' ACCOUNT LOCK;ユーザー
obsqluser01のロックを解除します。obclient> ALTER USER 'obsqluser01' ACCOUNT UNLOCK;ユーザー
user001がログインする際、デフォルトでユーザーに付与されたrole001およびrole002ロールを有効にします。ALTER USER user001 DEFAULT ROLE role001, role002;