search
HomeDatabaseMysql TutorialDetailed explanation of examples of changing passwords and access restrictions in MySQL

MySQL is a true multi-user, multi-threaded SQL database server. MySQL is implemented as a client/server structure, which consists of a server daemon mysqld and many different client programs and libraries.

Due to the openness and stability of its source code, and its perfect combination with PHP, the popular website editor, many websites now use it as a back-end database, making it widely used. For security reasons, each user needs to be assigned access restrictions to different databases to meet the requirements of different users. They are discussed separately below for your reference.
1. Summary of MySQL password modification methods
First of all, one thing to note is: Under normal circumstances, changing the MySQL password requires root permissions in mysql, so ordinary users cannot change the password. , unless the administrator is requested to help modify it.
Method 1  
Use phpMyAdmin
(a tool for graphical management of MySql database). This is the simplest. Directly use SQL statements to modify the user table of the mysql database, but don’t forget To use the PASSWORD function, use the Insert command to insert a user, the Update command to modify a user, and the Delete command to delete a user. There is a detailed introduction to the user field of the data table later in this section.  
  Method 2    
  Use mysqladmin. Enter  
 mysqladmin -u root -p oldpassword newpasswd    
After executing this command, you need to enter the original password of root, so that the password of root will be changed to newpasswd. Similarly, change root in the command to your username, and you can change your own password.
Of course, if your mysqladmin cannot connect to the mysql
server, or you cannot execute mysqladmin, then this method is invalid, and mysqladmin cannot clear the password.
The following methods are used at the mysql prompt and must have root permissions for mysql:
Method 3
mysql> INSERT INTO mysql.user (Host,User,Password) VALUES
 ('%','system', PASSWORD('manager'));
 mysql> FLUSH PRIVILEGES  
 To be precise, this is adding a user, the username is system and the password is manager. Note that you need to use the PASSWORD function, and then use FLUSH
PRIVILEGES to perform confirmation.
Method 4  
Same as method 3, except that the REPLACE statement is used
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%' ,'system',PASSWORD('manager'));
mysql> FLUSH PRIVILEGES
Method 5
Use the SET PASSWORD statement
mysql> SET PASSWORD FOR system@"% " = PASSWORD('manager'); ​
You must also use the PASSWORD() function, but you do not need to use FLUSH PRIVILEGES to perform confirmation.​
Method 6
Use the GRANT... IDENTIFIED BY statement to authorize.​
Mysql> GRANT USAGE ON *.* TO system@"%" IDENTIFIED BY 'manager';
Here the PASSWORD() function is unnecessary, and there is no need to use FLUSH PRIVILEGES to perform confirmation.​
Note: The PASSWORD() function is used to encrypt the password, which is automatically interpreted by MySql in the program.​
  2. How to set access restrictions in MySql
We use two methods to set users.
Enter the Mysql execution directory (usually c:\mysql\bin). Enter mysqld-shareware.exe, enter mysql
 --user=root mysql, otherwise you cannot add a new user. Enter the mysql> prompt to perform operations.​
Suppose we want to create a super user with the user name system and the user password manager.
  Method One  
Use the Grant command to authorize, enter the code as follows:
 mysql>GRANT ALL PRIVILEGES ON *.* TO system@localhost IDENTIFIED BY
'manager' WITH GRANT OPTION;
VALUES('localhost','system',PASSWORD('manager'),
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y ','Y');
For the 3.22.34 version of MySQL, there are a total of 14 "Y"s, and their corresponding permissions are as follows (arranged in field order): ​
Permissions Table column name Corresponding explanation Scope of use
 select Select_priv only requires select permission when actually retrieving from a table table
insert Insert_priv allows you to insert new rows into an existing table table
update Update_priv allows you to update rows in an existing table with new values list
delete Delete_priv allows you to delete rows that meet the conditions table
create Create_priv allows you to create new databases and tables databases, tables or indexes
drop Drop_priv discards (delete) existing databases and tables database or Table
reload Reload_priv allows you to tell the server to re-read the authorization table Server Management
shutdown Shutdown_priv can be abused (by terminating the server to deny service to other users) Server Management
process Process_priv allows you to view the currently executing query Plain text, including setting or changing password queries Server Administration
File File_priv permission can be abused to read any readable file on the server into a database table File access on the server
Grant Grant_priv allows you to put your own Those permissions granted to other users database or table
References References_priv allows you to open and close the log file database or table
index Index_priv allows you to create or discard (delete) index table
alter Alter_priv allows you to change Tables can be used to override the permission system by renaming the table. Table
If the user is created with only select, insert, update and delete permissions, the user is allowed to perform operations only on the existing tables of a database.
Now we can create the database we want to use, we enter it directly. For example: if we want to create a database named XinXiKu, we can use the following code:  
 mysql>create database XinXiKu; affected (0.00 sec)

【Related recommendations】

1.

Mysql free video tutorial

2.

Use mysqldump to back up and restore tables Detailed explanation of examples

3.

Detailed explanation of examples of php storing pictures in mysql

4.

##5. Detailed explanation of examples of replacing content in the database with regular expressions

The above is the detailed content of Detailed explanation of examples of changing passwords and access restrictions in MySQL. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What are stored procedures in MySQL?What are stored procedures in MySQL?May 01, 2025 am 12:27 AM

Stored procedures are precompiled SQL statements in MySQL for improving performance and simplifying complex operations. 1. Improve performance: After the first compilation, subsequent calls do not need to be recompiled. 2. Improve security: Restrict data table access through permission control. 3. Simplify complex operations: combine multiple SQL statements to simplify application layer logic.

How does query caching work in MySQL?How does query caching work in MySQL?May 01, 2025 am 12:26 AM

The working principle of MySQL query cache is to store the results of SELECT query, and when the same query is executed again, the cached results are directly returned. 1) Query cache improves database reading performance and finds cached results through hash values. 2) Simple configuration, set query_cache_type and query_cache_size in MySQL configuration file. 3) Use the SQL_NO_CACHE keyword to disable the cache of specific queries. 4) In high-frequency update environments, query cache may cause performance bottlenecks and needs to be optimized for use through monitoring and adjustment of parameters.

What are the advantages of using MySQL over other relational databases?What are the advantages of using MySQL over other relational databases?May 01, 2025 am 12:18 AM

The reasons why MySQL is widely used in various projects include: 1. High performance and scalability, supporting multiple storage engines; 2. Easy to use and maintain, simple configuration and rich tools; 3. Rich ecosystem, attracting a large number of community and third-party tool support; 4. Cross-platform support, suitable for multiple operating systems.

How do you handle database upgrades in MySQL?How do you handle database upgrades in MySQL?Apr 30, 2025 am 12:28 AM

The steps for upgrading MySQL database include: 1. Backup the database, 2. Stop the current MySQL service, 3. Install the new version of MySQL, 4. Start the new version of MySQL service, 5. Recover the database. Compatibility issues are required during the upgrade process, and advanced tools such as PerconaToolkit can be used for testing and optimization.

What are the different backup strategies you can use for MySQL?What are the different backup strategies you can use for MySQL?Apr 30, 2025 am 12:28 AM

MySQL backup policies include logical backup, physical backup, incremental backup, replication-based backup, and cloud backup. 1. Logical backup uses mysqldump to export database structure and data, which is suitable for small databases and version migrations. 2. Physical backups are fast and comprehensive by copying data files, but require database consistency. 3. Incremental backup uses binary logging to record changes, which is suitable for large databases. 4. Replication-based backup reduces the impact on the production system by backing up from the server. 5. Cloud backups such as AmazonRDS provide automation solutions, but costs and control need to be considered. When selecting a policy, database size, downtime tolerance, recovery time, and recovery point goals should be considered.

What is MySQL clustering?What is MySQL clustering?Apr 30, 2025 am 12:28 AM

MySQLclusteringenhancesdatabaserobustnessandscalabilitybydistributingdataacrossmultiplenodes.ItusestheNDBenginefordatareplicationandfaulttolerance,ensuringhighavailability.Setupinvolvesconfiguringmanagement,data,andSQLnodes,withcarefulmonitoringandpe

How do you optimize database schema design for performance in MySQL?How do you optimize database schema design for performance in MySQL?Apr 30, 2025 am 12:27 AM

Optimizing database schema design in MySQL can improve performance through the following steps: 1. Index optimization: Create indexes on common query columns, balancing the overhead of query and inserting updates. 2. Table structure optimization: Reduce data redundancy through normalization or anti-normalization and improve access efficiency. 3. Data type selection: Use appropriate data types, such as INT instead of VARCHAR, to reduce storage space. 4. Partitioning and sub-table: For large data volumes, use partitioning and sub-table to disperse data to improve query and maintenance efficiency.

How can you optimize MySQL performance?How can you optimize MySQL performance?Apr 30, 2025 am 12:26 AM

TooptimizeMySQLperformance,followthesesteps:1)Implementproperindexingtospeedupqueries,2)UseEXPLAINtoanalyzeandoptimizequeryperformance,3)Adjustserverconfigurationsettingslikeinnodb_buffer_pool_sizeandmax_connections,4)Usepartitioningforlargetablestoi

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)