I want to create an user that can access from any hosts to Mysql server
I use
create user abc@10.10.131.17 identified by \'abc123\'
and >
One obvious guess would be that you didn't do FLUSH PRIVILEGES; after issuing GRANT statement.
FLUSH PRIVILEGES;
GRANT
Another obvious guess (not sure if typo in the question) is that syntax of GRANT is GRANT ALL PRIVILEGES ON mydb.* TO 'abc'@'%';, with ON in it.
GRANT ALL PRIVILEGES ON mydb.* TO 'abc'@'%';
ON