Linux如何开户MySQL_Linux系统MySQL用户创建与授权教程

来源:这里教程网 时间:2026-02-28 20:02:55 作者:

Linux下开户MySQL,其实就是创建MySQL用户并赋予相应的权限。下面会详细介绍如何在Linux系统中进行MySQL用户的创建与授权。

解决方案

    登录MySQL服务器:

    首先,你需要以root用户身份登录到MySQL服务器。在终端中输入以下命令:

    mysql -u root -p

    然后输入root用户的密码。如果root用户设置了密码,否则直接回车即可。

    创建新用户:

    登录成功后,就可以创建新的MySQL用户了。使用

    CREATE USER
    语句,并指定用户名和密码。例如,创建一个名为
    newuser
    ,密码为
    password
    的用户:

    CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
    'newuser'@'localhost'
    :表示用户名为
    newuser
    ,只能从本地主机连接MySQL服务器。
    'newuser'@'%'
    :表示用户名为
    newuser
    ,可以从任何主机连接MySQL服务器,通常不推荐,安全性较低。
    IDENTIFIED BY 'password'
    :设置用户的密码为
    password

    授予用户权限:

    创建用户后,需要授予用户相应的权限,才能进行数据库操作。使用

    GRANT
    语句,指定要授予的权限、数据库和用户。例如,授予
    newuser
    用户在
    mydatabase
    数据库上的所有权限:

    GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost';
    ALL PRIVILEGES
    :表示授予所有权限,包括SELECT、INSERT、UPDATE、DELETE、CREATE、DROP等。
    mydatabase.*
    :表示
    mydatabase
    数据库中的所有表。如果要授予所有数据库的权限,可以使用
    *.*
    可以根据需要授予不同的权限,例如:
    GRANT SELECT, INSERT ON mydatabase.mytable TO 'newuser'@'localhost';
    表示授予
    newuser
    用户在
    mydatabase
    数据库的
    mytable
    表上的SELECT和INSERT权限。

    刷新权限:

    授予权限后,需要刷新MySQL的权限,使新的权限生效。使用

    FLUSH PRIVILEGES
    语句:

    FLUSH PRIVILEGES;

    退出MySQL服务器:

    完成用户创建和授权后,可以使用

    exit
    命令退出MySQL服务器:

    exit

如何限制用户只能从特定IP地址连接MySQL?

限制用户只能从特定IP地址连接MySQL,可以在创建用户时指定主机名。例如,要限制用户

newuser
只能从IP地址
192.168.1.100
连接MySQL服务器,可以使用以下语句:

CREATE USER 'newuser'@'192.168.1.100' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'192.168.1.100';
FLUSH PRIVILEGES;

这样,

newuser
用户就只能从
192.168.1.100
这个IP地址连接到MySQL服务器。如果你希望允许一个IP地址段,可以使用通配符,例如
'newuser'@'192.168.1.%'
允许
192.168.1.0/24
网段的所有IP地址连接。

如何修改MySQL用户的密码?

修改MySQL用户的密码可以使用

ALTER USER
语句。例如,要修改
newuser
用户的密码为
newpassword
,可以使用以下语句:

ALTER USER 'newuser'@'localhost' IDENTIFIED BY 'newpassword';
FLUSH PRIVILEGES;

需要注意的是,执行此操作需要具有

UPDATE
权限,或者是以root用户身份登录。MySQL 8.0版本之后,推荐使用
ALTER USER
语句,而不是
SET PASSWORD
语句。

如何撤销MySQL用户的权限?

撤销MySQL用户的权限可以使用

REVOKE
语句。例如,要撤销
newuser
用户在
mydatabase
数据库上的所有权限,可以使用以下语句:

REVOKE ALL PRIVILEGES ON mydatabase.* FROM 'newuser'@'localhost';
FLUSH PRIVILEGES;

这会移除

newuser
用户在
mydatabase
数据库上的所有权限。可以根据需要撤销特定的权限,例如:
REVOKE SELECT ON mydatabase.mytable FROM 'newuser'@'localhost';
表示撤销
newuser
用户在
mydatabase
数据库的
mytable
表上的SELECT权限。

相关推荐

热文推荐