Isso depende inteiramente de como você autenticou
Você deve executar o seguinte
SELECT USER(),CURRENT_USER();
- USER () relata como você tentou autenticar no MySQL
- CURRENT_USER () relata como você pode autenticar no MySQL
Com toda a probabilidade, testuser @ '' não é um usuário com o qual você possa se conectar explicitamente. Os privs para testuser @ '' seriam concedidos a um usuário anônimo.
Você pode precisar tentar manipular o mysql.db. Execute isto
SELECT COUNT(1) FROM mysql.db WHERE LEFT(db,4)='test' AND user='';;
Se você obtiver uma resposta diferente de zero, execute SELECT * FROM mysql.db\G
e atualize as colunas de que precisa. Em seguida, execute FLUSH PRIVILEGES;
Em qualquer caso, é bom lembrar que uma VIEW é uma tabela em information_schema.tables ONDE a coluna do mecanismo é NULL. Portanto, certifique-se de que a necessidade adequada de priv para acessar as tabelas subjacentes no banco de dados testuser esteja acessível.
Você precisa ajustar o nível SECURITY_TYPE da visualização.