1. Change the table.It may be that your account is not allowed to log on remotely, but only on localhost. At this time, you only need to log in to MySQL on the computer of localhost, and change the "host" entry in the "user" table in the "MySQL" database to "%" from "localhost"
mysql -u root -p
sql>use mysql;
mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
2. Authorization method. For example, if you want myuser to use mypassword to connect to the MySQL server from any host.
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
If you want to allow myuser to connect to the MySQL server from a host whose IP address is 192.168.1.3, and use mypassword as the password
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
If you want to allow the user myuser to connect to the ABC database of the MySQL server from the host whose IP address is 192.168.1.3, and use mypassword as the password
GRANT ALL PRIVILEGES ON abc.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
Then merge the rows:
flush privileges;