lava-oushudb-dt-sql-parser/test/parser/mysql/syntax/fixtures/alterUser.sql
琉易 428d851913
feat: #190 improve mysql grammer (#196)
* refactor: generic rename to mysql

* refactor: g4 with mysql syntax

* test: mysql syntax

* refactor: remove useless keywords

* refactor: remove nonReserved keywords

* refactor: lint specificFunction

---------

Co-authored-by: liuyi <liuyi@dtstack.com>
2023-11-27 15:25:40 +08:00

218 lines
10 KiB
SQL

-- https://dev.mysql.com/doc/refman/8.0/en/alter-user.html
/* ALTER USER [IF EXISTS]
user [auth_option] [, user [auth_option]] ...
[REQUIRE {NONE | tls_option [[AND] tls_option] ...}]
[WITH resource_option [resource_option] ...]
[password_option | lock_option] ...
[COMMENT 'comment_string' | ATTRIBUTE 'json_object']
ALTER USER [IF EXISTS]
USER() user_func_auth_option
ALTER USER [IF EXISTS]
user [registration_option]
ALTER USER [IF EXISTS]
USER() [registration_option]
ALTER USER [IF EXISTS]
user DEFAULT ROLE
{NONE | ALL | role [, role ] ...}
user:
(see Section 6.2.4, “Specifying Account Names”)
auth_option: {
IDENTIFIED BY 'auth_string'
[REPLACE 'current_auth_string']
[RETAIN CURRENT PASSWORD]
| IDENTIFIED BY RANDOM PASSWORD
[REPLACE 'current_auth_string']
[RETAIN CURRENT PASSWORD]
| IDENTIFIED WITH auth_plugin
| IDENTIFIED WITH auth_plugin BY 'auth_string'
[REPLACE 'current_auth_string']
[RETAIN CURRENT PASSWORD]
| IDENTIFIED WITH auth_plugin BY RANDOM PASSWORD
[REPLACE 'current_auth_string']
[RETAIN CURRENT PASSWORD]
| IDENTIFIED WITH auth_plugin AS 'auth_string'
| DISCARD OLD PASSWORD
| ADD factor factor_auth_option [ADD factor factor_auth_option]
| MODIFY factor factor_auth_option [MODIFY factor factor_auth_option]
| DROP factor [DROP factor]
}
user_func_auth_option: {
IDENTIFIED BY 'auth_string'
[REPLACE 'current_auth_string']
[RETAIN CURRENT PASSWORD]
| DISCARD OLD PASSWORD
}
factor_auth_option: {
IDENTIFIED BY 'auth_string'
| IDENTIFIED BY RANDOM PASSWORD
| IDENTIFIED WITH auth_plugin BY 'auth_string'
| IDENTIFIED WITH auth_plugin BY RANDOM PASSWORD
| IDENTIFIED WITH auth_plugin AS 'auth_string'
}
registration_option: {
factor INITIATE REGISTRATION
| factor FINISH REGISTRATION SET CHALLENGE_RESPONSE AS 'auth_string'
| factor UNREGISTER
}
factor: {2 | 3} FACTOR
tls_option: {
SSL
| X509
| CIPHER 'cipher'
| ISSUER 'issuer'
| SUBJECT 'subject'
}
resource_option: {
MAX_QUERIES_PER_HOUR count
| MAX_UPDATES_PER_HOUR count
| MAX_CONNECTIONS_PER_HOUR count
| MAX_USER_CONNECTIONS count
}
password_option: {
PASSWORD EXPIRE [DEFAULT | NEVER | INTERVAL N DAY]
| PASSWORD HISTORY {DEFAULT | N}
| PASSWORD REUSE INTERVAL {DEFAULT | N DAY}
| PASSWORD REQUIRE CURRENT [DEFAULT | OPTIONAL]
| FAILED_LOGIN_ATTEMPTS N
| PASSWORD_LOCK_TIME {N | UNBOUNDED}
}
lock_option: {
ACCOUNT LOCK
| ACCOUNT UNLOCK
} */
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'new_password' PASSWORD EXPIRE;
ALTER USER 'jeffrey'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'new_password' PASSWORD EXPIRE INTERVAL 180 DAY;
ALTER USER 'jeffrey'@'localhost' ACCOUNT LOCK;
ALTER USER 'jeffrey'@'localhost' ACCOUNT UNLOCK;
ALTER USER 'jeffrey'@'localhost' REQUIRE SSL WITH MAX_CONNECTIONS_PER_HOUR 20;
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'jeffrey_new_password', 'jeanne'@'localhost', 'josh'@'localhost' IDENTIFIED BY 'josh_new_password' REPLACE 'josh_current_password' RETAIN CURRENT PASSWORD REQUIRE SSL WITH MAX_USER_CONNECTIONS 2 PASSWORD HISTORY 5;
ALTER USER 'josh'@'localhost' DISCARD OLD PASSWORD;
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'password';
ALTER USER 'jeffrey'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
ALTER USER 'jeffrey'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password' REPLACE 'current_password';
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'new_password' RETAIN CURRENT PASSWORD;
ALTER USER 'jeffery'@'localhost' DISCARD OLD PASSWORD;
ALTER USER 'jeffrey'@'localhost' IDENTIFIED WITH mysql_native_password AS '*6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4';
ALTER USER 'user' DROP 2 FACTOR DROP 3 FACTOR;
ALTER USER 'joe'@'10.0.0.1' DEFAULT ROLE administrator, developer;
ALTER USER 'jeffrey'@'localhost' REQUIRE NONE;
ALTER USER 'jeffrey'@'localhost' REQUIRE SSL;
ALTER USER 'jeffrey'@'localhost' REQUIRE X509;
ALTER USER 'jeffrey'@'localhost' REQUIRE ISSUER '/C=SE/ST=Stockholm/L=Stockholm/ O=MySQL/CN=CA/emailAddress=ca@example.com';
ALTER USER 'jeffrey'@'localhost' REQUIRE SUBJECT '/C=SE/ST=Stockholm/L=Stockholm/ O=MySQL demo client certificate/ CN=client/emailAddress=client@example.com';
ALTER USER 'jeffrey'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA';
ALTER USER 'jeffrey'@'localhost' REQUIRE SUBJECT '/C=SE/ST=Stockholm/L=Stockholm/ O=MySQL demo client certificate/ CN=client/emailAddress=client@example.com' AND ISSUER '/C=SE/ST=Stockholm/L=Stockholm/ O=MySQL/CN=CA/emailAddress=ca@example.com' AND CIPHER 'EDH-RSA-DES-CBC3-SHA';
ALTER USER 'jeffrey'@'localhost' WITH MAX_QUERIES_PER_HOUR 500 MAX_UPDATES_PER_HOUR 100;
ALTER USER 'jeffrey'@'localhost' PASSWORD EXPIRE;
ALTER USER 'jeffrey'@'localhost' PASSWORD EXPIRE DEFAULT;
ALTER USER 'jeffrey'@'localhost' PASSWORD EXPIRE NEVER;
ALTER USER 'jeffrey'@'localhost' PASSWORD EXPIRE INTERVAL 180 DAY;
ALTER USER 'jeffrey'@'localhost' PASSWORD HISTORY DEFAULT;
ALTER USER 'jeffrey'@'localhost' PASSWORD HISTORY 6;
ALTER USER 'jeffrey'@'localhost' PASSWORD REUSE INTERVAL DEFAULT;
ALTER USER 'jeffrey'@'localhost' PASSWORD REUSE INTERVAL 360 DAY;
ALTER USER 'jeffrey'@'localhost' PASSWORD REQUIRE CURRENT;
ALTER USER 'jeffrey'@'localhost' PASSWORD REQUIRE CURRENT OPTIONAL;
ALTER USER 'jeffrey'@'localhost' PASSWORD REQUIRE CURRENT DEFAULT;
ALTER USER 'jeffrey'@'localhost' FAILED_LOGIN_ATTEMPTS 4 PASSWORD_LOCK_TIME 2;
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"baz": "faz", "foo": "moo"}';
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"foo": null}';
ALTER USER 'bill'@'localhost' COMMENT 'Something about Bill';
ALTER USER 'bill'@'localhost' COMMENT '';
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"comment": null}';
ALTER USER IF EXISTS 'user' IDENTIFIED BY 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY 'auth_string' REPLACE 'current_auth_string';
ALTER USER 'user' IDENTIFIED BY 'auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY 'auth_string';
ALTER USER IF EXISTS 'user' IDENTIFIED BY RANDOM PASSWORD REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY RANDOM PASSWORD REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY RANDOM PASSWORD REPLACE 'current_auth_string';
ALTER USER 'user' IDENTIFIED BY RANDOM PASSWORD RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED BY RANDOM PASSWORD;
ALTER USER IF EXISTS 'user' IDENTIFIED WITH 'auth_plugin' BY 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY 'auth_string' REPLACE 'current_auth_string';
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY 'auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY 'auth_string';
ALTER USER IF EXISTS 'user' IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD REPLACE 'current_auth_string';
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD;
ALTER USER IF EXISTS 'user' IDENTIFIED WITH 'auth_plugin' AS 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' AS 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' AS 'auth_string' REPLACE 'current_auth_string';
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' AS 'auth_string' RETAIN CURRENT PASSWORD;
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin' AS 'auth_string';
ALTER USER 'user' IDENTIFIED WITH 'auth_plugin';
ALTER USER USER() DISCARD OLD PASSWORD;
ALTER USER 'user' DISCARD OLD PASSWORD;
ALTER USER IF EXISTS 'user' ADD 2 FACTOR IDENTIFIED BY 'auth_string' ADD 2 FACTOR IDENTIFIED BY 'auth_string';
ALTER USER 'user' ADD 2 FACTOR IDENTIFIED BY 'auth_string' ADD 2 FACTOR IDENTIFIED BY 'auth_string';
ALTER USER 'user' ADD 2 FACTOR IDENTIFIED BY RANDOM PASSWORD;
ALTER USER 'user' ADD 2 FACTOR IDENTIFIED WITH 'auth_plugin' BY 'auth_string';
ALTER USER 'user' ADD 3 FACTOR IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD;
ALTER USER 'user' ADD 3 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string';
ALTER USER 'user' ADD 3 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string' ADD 2 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string';
ALTER USER IF EXISTS 'user' MODIFY 2 FACTOR IDENTIFIED BY 'auth_string' MODIFY 2 FACTOR IDENTIFIED BY 'auth_string';
ALTER USER 'user' MODIFY 2 FACTOR IDENTIFIED BY 'auth_string' MODIFY 2 FACTOR IDENTIFIED BY 'auth_string';
ALTER USER 'user' MODIFY 2 FACTOR IDENTIFIED BY RANDOM PASSWORD;
ALTER USER 'user' MODIFY 2 FACTOR IDENTIFIED WITH 'auth_plugin' BY 'auth_string';
ALTER USER 'user' MODIFY 3 FACTOR IDENTIFIED WITH 'auth_plugin' BY RANDOM PASSWORD;
ALTER USER 'user' MODIFY 3 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string';
ALTER USER 'user' MODIFY 3 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string' MODIFY 2 FACTOR IDENTIFIED WITH 'auth_plugin' AS 'auth_string';
ALTER USER 'user' DROP 2 FACTOR DROP 3 FACTOR;
ALTER USER IF EXISTS USER() IDENTIFIED BY 'auth_string';
ALTER USER USER() IDENTIFIED BY 'auth_string' REPLACE 'current_auth_string' RETAIN CURRENT PASSWORD;
ALTER USER USER() IDENTIFIED BY 'auth_string' REPLACE 'current_auth_string';
ALTER USER USER() IDENTIFIED BY 'auth_string' RETAIN CURRENT PASSWORD;
ALTER USER USER() DISCARD OLD PASSWORD;
ALTER USER USER() IDENTIFIED BY 'auth_string';
ALTER USER IF EXISTS 'user' 2 FACTOR INITIATE REGISTRATION;
ALTER USER 'user' 2 FACTOR INITIATE REGISTRATION;
ALTER USER 'user' 3 FACTOR FINISH REGISTRATION SET CHALLENGE_RESPONSE AS 'auth_string';
ALTER USER 'user' 3 FACTOR UNREGISTER;
ALTER USER 'user';
ALTER USER IF EXISTS USER() 2 FACTOR INITIATE REGISTRATION;
ALTER USER USER() 2 FACTOR INITIATE REGISTRATION;
ALTER USER USER() 3 FACTOR FINISH REGISTRATION SET CHALLENGE_RESPONSE AS 'auth_string';
ALTER USER USER() 3 FACTOR UNREGISTER;
ALTER USER USER();
ALTER USER IF EXISTS 'user' DEFAULT ROLE NONE;
ALTER USER 'user' DEFAULT ROLE NONE;
ALTER USER 'user' DEFAULT ROLE ALL;
ALTER USER 'user' DEFAULT ROLE developer;