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 用户管理和权限设置的相关知识。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值