mysql8初始化 2021-12-18版本 设置mysql大写

本文详细介绍MySQL的安装步骤,包括备份、删除旧版本、配置新版本等,并提供了具体配置参数及命令,最后还介绍了如何创建用户及分配权限。

因为数据库大小写的原因,需要初始化修改才生效所以开始吧.

1 备份,删除当前mysql

运行命令 net stop mysql

确保备份完成

清理mysql 安装目录下的data

运行命令 mysqld --remove

2 根据需求设置好 mysql.ini 文件 网络上很多版本都老化了

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Main\mysql8\
# 设置mysql数据库的数据的存放目录,在安装mysql-5.7.30-winx64.zip版本的时候,此配置不可添加,否则mysql将无法启动。
# datadir=E:\Software\mysql-8.0.19-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#default_authentication_plugin=mysql_native_password
# 关闭ssl
#skip_ssl
# 配置时区
default-time_zone='+8:00'
#lower_case_table_names = 1  表名存储在磁盘是小写的,但是比较的时候是不区分大小写
#lower_case_table_names=0  表名存储为给定的大小和比较是区分大小写的
#lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的 
lower_case_table_names=2
[mysql]
# 设置mysql客户端默认字符集
#default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

3 终端命令下进入mysql 安装文件夹

运行 mysqld --install

运行 mysqld --initialize --user=mysql --console

4 记录好初始密码,图片红色部分

5运行服务

net start mysql

 登录mysql

mysql -u root -p

6修改密码

alter user 'root'@'localhost' identified by '123456';

7 创建新用户

 use mysql
 create user 'sunwork'@'%' identified by 'qwe123';

8 权限给与 

grant all privileges  on *.*  to "sunwork"@'%';

9 处理客户端登录失败的问题  (如登录无问题,跳过)

ALTER USER 'sunwork'@'%' IDENTIFIED WITH mysql_native_password BY 'qwe123

### 初始化数据库设置 MySQL 的 root 用户密码 在 MySQL 初始化数据库后,设置 root 用户密码是确保数据库安全的重要步骤。根据 MySQL版本不同,设置 root 用户密码的方法也略有差异。以下步骤适用于 MySQL 5.7 及以上版本,尤其是 5.7.9 之后的版本,因为从该版本开始废弃了 `password()` 函数和 `password` 字段,使用 `authentication_string` 字段来存储用户密码[^1]。 #### 设置 root 用户密码 如果 root 用户的 `authentication_string` 字段为空,可以直接使用 `ALTER USER` 命令修改密码。如果该字段已有内容,建议先将其设置为空,然后再进行修改。例如: ```sql USE mysql; UPDATE user SET authentication_string = '' WHERE user = 'root'; ``` 接下来使用以下命令设置 root 用户的新密码: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'JOhydhLfMsWyBcn#'; ``` 上述命令将 root 用户的密码设置为 `JOhydhLfMsWyBcn#`,此密码包含大写字母、小写字母、数字和特殊符号,符合 MySQL 对密码复杂性的要求。 #### 注意事项 - 修改密码后,不需要执行 `FLUSH PRIVILEGES` 命令来刷新权限,因为 `ALTER USER` 命令会自动更新权限。 - 确保新密码足够复杂,以提高数据库的安全性。 - 修改密码成功后,可以使用新的用户名和密码重新登录 MySQL。 #### 示例代码 ```sql USE mysql; UPDATE user SET authentication_string = '' WHERE user = 'root'; ALTER USER 'root'@'localhost' IDENTIFIED BY 'JOhydhLfMsWyBcn#'; ``` #### 相关问题 1. 如何查看 MySQL 用户的具体权限? 2. 如何授予用户远程访问 MySQL 数据库的权限? 3. 如何确保 MySQL 用户账号的安全性? 这些问题可以帮助进一步了解 MySQL 用户管理和权限设置的相关知识。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值