다른 사용자에게 root 만큼의 권한을 주고 root 사용자를 지웠다. 이 때 분명히 권한있는 사용자로 select * from mysql.user 를 했는데도 The user specified as a definer ('root'@'localhost') does not exist 라는 에러가 나면서 조회가 안된다. mysql database에 있는 다른 테이블은 다 조회가 되는데.. 그래서 찾아봤더니... MariaDB 10.4 부터는 mysql.user 가 테이블이 아니고 view 인데, mysql.user 뷰를 생성한 'root'@'localhost' 사용자가 사라져서 생기는 문제이다. VIEW의 DEFINER 정보를 바꿔주면 되는데, ALTER VIEW 구문에서 DEFINER만 바꾸는 방법이 없고..