A good memory is better than a bad pen, a record.
MySQL is installed by default to deny remote connections.
First enter the database and use the system database MySQL.
1 mysql-u root-p MySQL #回车, then the system database is used for input
The password for remote access is then set to the root account of the system database and does not conflict with the local root access password.
1 Grant all privileges on * * to ' root ' @ '% ' identified by ' 123456 ' with GRANT option; #123456为你需要设置的密码
Firewall settings, or 3306 port is still inaccessible.
1 iptables-i input-p tcp-m State--state new-m TCP--dport 3306-j ACCEPT
When you're done, check to see if you can pass.
1 Iptables-l-N
If you want to restrict access.
iptables-d input-p tcp-m State--state new-m TCP--dport 3306-j ACCEPT
OK, so you can access it remotely.
Second, allow the root user to telnet in a specific IP, and have all the library operation permissions, the following:
Log in to MySQL using the root user first:
Mysql-u root-p "Youpassword"
To authorize the operation:
Grant all privileges on * * to [email protected] ' 172.16.16.152 ' identified by ' Youpassword ' with GRANT OPTION;
Overload Authorization Table:
FLUSH privileges;
To exit the MySQL database:
Exit
Third, allow the root user to telnet in a specific IP, and have all the library-specific operation rights, the following:
Log in to MySQL using the root user first:
Mysql-u root-p "Youpassword"
To authorize the operation:
GRANT select,insert,update,delete On * * to [e-mail protected] "172.16.16.152" identified by "Youpassword";
Overload Authorization Table:
FLUSH privileges;
To exit the MySQL database:
Exit
Iv. Remove user authorization, need to use the revoke command, the specific command format is:
REVOKE privileges on database [. Table name] from User-name;
For specific instances, first log in to MySQL:
Mysql-u root-p "Youpassword"
To authorize the operation:
GRANT Select,insert,update,delete on Test-db to [e-mail protected] "172.16.16.152" identified by "Youpassword";
Then delete the authorization action:
REVOKE all on test-db from Test-user;
Note: This action only clears the user's authorization rights for TEST-DB, but this "test-user" user still exists.
Finally, clear the user from the user table:
DELETE from user WHERE user= "Test-user";
Overload Authorization Table:
FLUSH privileges;
To exit the MySQL database:
Exit
V. MySQL permissions detailed classification:
Global Administrative permissions:
File: Read and write files on the MySQL server.
PROCESS: Displays or kills service threads belonging to other users.
RELOAD: Overloads the Access Control table, refreshes the log, and so on.
SHUTDOWN: Turn off the MySQL service.
Database/data Table/Data column permissions:
Alter: Modifies an existing data table (for example, add/Remove Columns) and index.
Create: Create a new database or data table.
Delete: Deletes the record for the table.
Drop: Deletes a data table or database.
Index: Establish or delete the indexes.
INSERT: Adds a table record.
SELECT: Displays/searches the table's records.
UPDATE: Modifies a record that already exists in the table.
Special permissions:
All: Allow to do anything (as root).
USAGE: Only allow login-nothing else is allowed.
CentOS Setup remote access for MySQL