AWS: MariaDB RDS – kill: You are not owner of thread
Имеется AWS RDS с MariaDB. Ошибка и решение не специфичны ни для AWS RDS, ни для MariaDB. При попытке убить процесс – RDS сообщает, что: MariaDB [(none)]> kill 759;ERROR 1095 (HY000): You are not owner of thread 759 Решение – использовать процедуру mysql.rds_kill(): MariaDB [(none)]> SHOW CREATE PROCEDURE mysql.rds_killG*************************** 1. row ***************************Procedure: rds_killsql_mode: NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONCreate Procedure: CREATE DEFINER=`rdsadmin`@`localhost` PROCEDURE `rds_kill`(IN thread BIGINT)READS SQL DATADETERMINISTICBEGINDECLARE l_user varchar(16);DECLARE l_host varchar(64);DECLARE foo varchar(255);SELECT user, host INTO l_user, l_hostFROM information_schema.processlistWHERE id = thread;IF l_user = "rdsadmin" and l_host like "localhost%" THENselect `ERROR (RDS): CANNOT KILL RDSADMIN SESSION` into foo;ELSEIF l_user = "rdsrepladmin" THENselect `ERROR (RDS): CANNOT KILL RDSREPLADMIN SESSION` into foo;ELSEKILL thread;END IF;END Вызываем её: MariaDB [(none)]> CALL mysql.rds_kill(761);Query OK, 0 rows affected (0.00 sec) Для Azure MySQL имеется аналогичная процедура mysql.az_kill(). Готово.
https://rtfm.co.ua/aws-mariadb-rds-kill-you-are-not-owner-of-thread/
Post #95
134