mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 20:36:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			89 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			89 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
CREATE ROLE IF NOT EXISTS role1 WITH ADMIN user1;
 | 
						|
Warnings:
 | 
						|
Note	1449	The user specified as a definer ('user1'@'%') does not exist
 | 
						|
SELECT * FROM mysql.roles_mapping;
 | 
						|
Host	User	Role	Admin_option
 | 
						|
%	user1	role1	Y
 | 
						|
DROP ROLE role1;
 | 
						|
CREATE OR REPLACE ROLE role1 WITH ADMIN user2;
 | 
						|
Warnings:
 | 
						|
Note	1449	The user specified as a definer ('user2'@'%') does not exist
 | 
						|
SELECT * FROM mysql.roles_mapping WHERE Role='role1';
 | 
						|
Host	User	Role	Admin_option
 | 
						|
%	user2	role1	Y
 | 
						|
CREATE OR REPLACE ROLE role1 WITH ADMIN user3;
 | 
						|
Warnings:
 | 
						|
Note	1449	The user specified as a definer ('user3'@'%') does not exist
 | 
						|
SELECT * FROM mysql.roles_mapping WHERE Role='role1';
 | 
						|
Host	User	Role	Admin_option
 | 
						|
%	user3	role1	Y
 | 
						|
CREATE ROLE IF NOT EXISTS role1 WITH ADMIN user4;
 | 
						|
Warnings:
 | 
						|
Note	1449	The user specified as a definer ('user4'@'%') does not exist
 | 
						|
Note	1975	Can't create role 'role1'; it already exists
 | 
						|
SELECT * FROM mysql.roles_mapping WHERE Role='role1';
 | 
						|
Host	User	Role	Admin_option
 | 
						|
%	user3	role1	Y
 | 
						|
DROP ROLE IF EXISTS role1;
 | 
						|
SELECT * FROM mysql.roles_mapping WHERE Role='role1';
 | 
						|
Host	User	Role	Admin_option
 | 
						|
DROP ROLE IF EXISTS role1;
 | 
						|
Warnings:
 | 
						|
Note	1976	Can't drop role 'role1'; it doesn't exist
 | 
						|
CREATE ROLE role_1;
 | 
						|
CREATE ROLE IF NOT EXISTS role_1;
 | 
						|
Warnings:
 | 
						|
Note	1975	Can't create role 'role_1'; it already exists
 | 
						|
CREATE OR REPLACE ROLE role_1;
 | 
						|
CREATE OR REPLACE ROLE IF NOT EXISTS role_1;
 | 
						|
ERROR HY000: Incorrect usage of OR REPLACE and IF NOT EXISTS
 | 
						|
CREATE ROLE role_1;
 | 
						|
ERROR HY000: Operation CREATE ROLE failed for 'role_1'
 | 
						|
CREATE USER u1@localhost;
 | 
						|
REVOKE SHOW DATABASES ON *.* FROM 'u1'@'localhost';
 | 
						|
GRANT SHOW DATABASES ON *.* TO role_1;
 | 
						|
GRANT role_1 TO u1@localhost;
 | 
						|
connect  user_a, localhost, u1,,;
 | 
						|
connection user_a;
 | 
						|
SELECT CURRENT_USER;
 | 
						|
CURRENT_USER
 | 
						|
u1@localhost
 | 
						|
SHOW DATABASES;
 | 
						|
Database
 | 
						|
information_schema
 | 
						|
test
 | 
						|
SELECT CURRENT_ROLE;
 | 
						|
CURRENT_ROLE
 | 
						|
NULL
 | 
						|
SET ROLE role_1;
 | 
						|
SELECT CURRENT_ROLE;
 | 
						|
CURRENT_ROLE
 | 
						|
role_1
 | 
						|
SHOW DATABASES;
 | 
						|
Database
 | 
						|
information_schema
 | 
						|
mtr
 | 
						|
mysql
 | 
						|
performance_schema
 | 
						|
sys
 | 
						|
test
 | 
						|
SET ROLE NONE;
 | 
						|
connect  user_b, localhost, root,,;
 | 
						|
connection user_b;
 | 
						|
# Clearing up
 | 
						|
DROP ROLE role_1;
 | 
						|
DROP ROLE IF EXISTS role_1;
 | 
						|
Warnings:
 | 
						|
Note	1976	Can't drop role 'role_1'; it doesn't exist
 | 
						|
DROP ROLE role_1;
 | 
						|
ERROR HY000: Operation DROP ROLE failed for 'role_1'
 | 
						|
DROP USER u1@localhost;
 | 
						|
CREATE ROLE r;
 | 
						|
GRANT SHOW DATABASES ON *.* TO r;
 | 
						|
CREATE USER foo;
 | 
						|
CREATE USER bar;
 | 
						|
GRANT r TO foo;
 | 
						|
CREATE OR REPLACE USER foo IDENTIFIED WITH non_existing_plugin;
 | 
						|
ERROR HY000: Plugin 'non_existing_plugin' is not loaded
 | 
						|
DROP ROLE r;
 | 
						|
DROP USER bar;
 |