Restore mysql from database snapshot
I see you restored the tables. Your issue seems to be the owner of either a view or a stored procedure

You need to replace all occurrences of 

`root`@`%`


in the file with

`root`@`localhost`


I would not recommend creating the user root@'%' as that would allow root to have remote access.

Since root@'%' is the owner of the routines, I will create root@'%' like root@localhost

Please run the following:

CREATE TABLE mysql.user_root LIKE mysql.user;
INSERT INTO mysql.user_root
SELECT * FROM mysql.user WHERE user='root' and host='localhost';
UPDATE mysql.user_root SET host='%';
REPLACE INTO mysql.user SELECT * FROM mysql.user_root;
DROP TABLE mysql.user_root;
FLUSH PRIVILEGES;