MySQL 8.0 保姆级教程——第四篇:创建用户并赋予权限

本篇我们将详细讲解 MySQL 8.0 中创建用户并赋予权限的操作。

一、mysql_native_password认证方式

1.1 登录 MySQL

首先,你需要使用具有足够权限的用户(通常是 root 用户)登录到 MySQL 服务器。在命令行或终端中使用以下命令:

Bash

mysql -u root -p

输入 root 用户的密码后,即可进入 MySQL 命令行界面。

1.2 创建用户

使用 CREATE USER 语句创建新用户。MySQL 8.0 推荐使用 IDENTIFIED WITH mysql_native_password BY 'password' 语法来指定密码和认证方式,以提高安全性。

SQL

CREATE USER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';
  • username: 你要创建的用户名。
  • host: 指定用户可以从哪个主机连接到 MySQL 服务器。
    • '%': 允许用户从任何主机连接。(不推荐在生产环境中使用,安全性较低)
    • 'localhost': 只允许用户从本地主机连接。
    • '192.168.1.%': 允许用户从 192.168.1.0/24 网段的主机连接。
    • 'specific_ip': 允许用户从特定 IP 地址的主机连接。
  • password: 你要设置的用户密码。请务必使用强密码。

示例:

创建一个名为 testuser,密码为 TestPass123!,允许从任何主机连接的用户:

SQL

CREATE USER 'testuser'@'%' IDENTIFIED WITH mysql_native_password BY 'TestPass123!';

创建一个名为 localuser,密码为 LocalPass456!,只允许从本地主机连接的用户:

SQL

CREATE USER 'localuser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'LocalPass456!';

1.3.授予权限

使用 GRANT 语句为用户授予权限。语法如下:

SQL

GRANT privileges ON database.table TO 'username'@'host';
  • privileges:
MySQL 8.0是一款流行的开源关系型数据库管理系统。以下是MySQL 8.0保姆安装教程: **步骤1:下载MySQL** 首先,访问MySQL官方网站(https://dev.mysql.com/downloads/mysql/)下载适合您操作系统的版本。推荐下载二进制安装包,因为包含了所有依赖。 **步骤2:运行安装脚本** 解压下载的文件,进入目录,通常会看到`mysql-community-server-8.0.x.x-linux-gnu.tar.gz`这样的文件。打开终端,输入命令行如下: ```sh sudo sh mysql-community-server-8.0.x.x-linux-gnu/scripts/mysql_install_db --user=root --basedir=([安装路径]) --datadir=([数据路径]) ``` 将 `[安装路径]` 和 `[数据路径]` 替换为实际的安装目录和数据存储位置,比如 `/usr/local/mysql` 和 `/var/lib/mysql`。 **步骤3:配置启动选项** 编辑MySQL的配置文件 `my.cnf` (默认在 `/etc/mysql/my.cnf` 或 `/etc/my.cnf`),根据需要设置监听地址、最大连接数等。例如,添加 `bind-address = 0.0.0.0` 让MySQL监听所有IP。 **步骤4:启动服务** ```sh sudo systemctl start mysqld ``` 检查是否成功启动: ```sh sudo systemctl status mysqld ``` **步骤5:安全初始化** 首次启动时,MySQL会提示你设置root用户的密码。这是非常重要的一步,务必妥善保管。 **步骤6:创建用户和服务账户** 如果计划让系统用户定期备份或管理数据库,可以创建新的MySQL用户给予适当权限。 **步骤7:防火墙设置** 允许外部访问,如果是Linux,可以启用防火墙规则以允许特定端口(默认3306)通信。 **步骤8:设置自动启动** 为了每次系统启动时自动运行MySQL,可以使用以下命令: ```sh sudo systemctl enable mysqld ``` **相关问题--:** 1. 如何通过命令行查看MySQL状态? 2. 如何更改MySQL root用户的密码? 3. 安装过程中如何处理错误或问题?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值