当前位置: 首页 > news >正文

【环境搭建】MySQL安装部署

Win64安装MySQL

Windows的玩法比较少,没有像MAC一样给你提供mysqld-safe等等各种的启动脚本,只有手动启动或者是以服务启动Mysql。
点击下载:MySQL5.5-8.0.7z (密码是11)

1.下载软件

这一步下载好软件就可以了,下载地址:

  • MySQL :: Download MySQL Community Server
    • https://downloads.mysql.com/archives/community/
      记住一定要打开后面的Archives,里面的才有真正的压缩包下载(注意一下小版本,是8.0.34还是多少?两个不一样的话,整个bin文件夹里面的内容都是不一样的。)。
    • 选择正确的版本8.34

2.修改MySQL配置

  • 创建my.ini。是新建是新建!!!要自己新建
  • 配环境变量,很简单,配一下bin目录,能找到可执行命令就行。

3.初始化MySQL(注册成服务)

开启管理员CMD窗口

(1)切换到mysql的bin目录;
(2)执行mysqld --initialize命令,此时会生成一个新目录data,查看.err文件,打开可以看到root用户生成的随机密码;

# (1)使用管理员窗口CD到bin目录。执行完initialize之后会有默认的密码。默认密码放在点error文件里面。
cd 指定目录
mysqld –initialize-insecure# (2)注册成服务。类似sc create 命令 需要管理员权限!(mysqld --install [new-db],new-db是名称。)
mysqld --install
net start mysql# (3)进入客户端,修改登录密码为root。
mysql -u root -p
alter user 'root'@'localhost' identified with mysql_native_password by 'root';
命令说明
mysqld -remove移除自己的mysqld服务
net stop mysql停止mysql服务
sc delete xxx删除
  • 初始化命令
    • mysqld –initialize-insecure 自动生成无密码的root用户;
    • mysqld –initialize 自动生成带随机密码的root用户;

开启远程访问

当我们重新部署了一个MySQL服务后,发现在局域网内进行合作开发时却无法连接到指定数据库,这时候简单配置就可以解决连接问题:

1.三句话解决

USE mysql;
CREATE USER 'root'@'%' IDENTIFIED BY 'ROOT';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;# 说明:
# 创建一个新的数据库用户。在这里,它创建了一个用户名为 "root" 的用户,允许从任何主机 '%' 连接,并且设置了密码为 'ROOT'。
# 授予了用户 'root'@'%' 对所有数据库和所有表的所有权限(管理员级别)

2.检查效果

# 最后到user表check一下
SELECT User, Host FROM user;mysql> SELECT User, Host FROM user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)

相关问题:https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user-in-mysql-8-0

忘记MySQL密码

处理方法如下

  1. 窗口1:
    • 管理员打开cmd窗口输入命令:net stop mysql
    • 切到MySQL的bin目录
      • MySQL 8.0.x 版本推荐使用:mysqld --console --skip-grant-tables --shared-memory
      • 低版本MySQL数据库:
        • mysqld --skip-grant-tables
        • mysqld -nt --skip-grant-tables
  2. 窗口2:
    • flush privileges;
    • set password for root@localhost=‘root’:

同一台电脑,配置多个MySQL服务

核心诀窍就是同一个版本用同样的bin, Bat脚本里面写启动服务是用Bin里面的启动脚本启动(以达到共用脚本的目的),它的配置文件可以指向特定的配置文件,又通过特定的配置文件指向特定的data,从而达成隔离data文件的目的。

强烈推荐使用docker来构建不同的环境,比下面的方式更加灵活

1.Bat脚本

start D:\env\mysql_bin_8.0.35\mysqld.exe --defaults-file="D:\env\mysql_service1_data\my.ini"  --console

2.mysql配置文件(.ini)

[mysqld]
skip-log-bin
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\env\mysql_service1_data
#默认时区为东八区
default-time_zone = '+8:00'
# 允许最大连接数
max_connections=10000
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=caching_sha2_password
# 信任目录,表示导出文件可以不仅仅导出到data文件夹中
secure_file_priv=''
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
  • 注意这个BaseDir一定要填好,配置文件放在哪不重要。

http://www.mrgr.cn/news/35309.html

相关文章:

  • 04 面部表情识别:Pytorch实现表情识别-表情数据集训练代码
  • 论文研读——《RF-Diffusion: Radio Signal Generation via Time-Frequency Diffusion》
  • Proteus如何添加数码管
  • [3]Opengl ES着色器
  • 物理学基础精解【14】
  • AI写论文哪个平台好用?吐血总结10个AI论文写作工具
  • 【python篇】python pickle模块一篇就能明白,快速理解
  • C语言练习:通讯录
  • 电脑共享同屏的几种方法分享
  • windows桌面管理软件推荐:一键整理桌面!美化电脑桌面小助手!
  • 【MySQL】regexp_replace在MySQL以及regexp extract all在MySQL的用法
  • 如何修改音频的音量增益
  • 力扣 中等 92.反转链表 II
  • std::make_unique小结
  • 【Qt】背景介绍
  • 【代码笔记】
  • Java解决同构字符串问题
  • file zilla server安装以后,client连接,账号登录成功,但是读取目录失败的处理
  • 建筑工程系列专业职称评审条件大全
  • 误删系统引导如何恢复?如何创建系统引导?