Windows 上 MySQL 5.7 安装教程

😂 这篇文章最后更新于620天前,您需要注意相关的内容是否还可用。
目录导航
  • 下载
  • 解压
  • 设置环境变量
  • 创建数据目录与配置文件
  • 初始化
  • 安装并启动
  • 设置登录密码
  • 下载

    MySQL :: Download MySQL Community Server (Archived Versions)
    https://downloads.mysql.com/archives/community/
    选择 5.7.* 版本,然后选择 zip 文件进行下载

    解压

    将下载的文件解压到自己安装软件的目录

    设置环境变量

    依次点击 此电脑 — 属性 — 高级系统设置 — 环境变量,然后新建系统变量

    MYSQL_HOME
    后面接 MySQL 安装目录

    Windows 上 MySQL 5.7 安装教程

    在 “Path”变量中添加%MYSQL_HOME%\bin

    Windows 上 MySQL 5.7 安装教程

    创建数据目录与配置文件

    在安装目录中分别创建 datauploads文件夹,分别存放 MySQL 数据和导入导出文件。

    在安装目录中创建 my.ini 文件,涉及到目录文件的跟进自己情况做修改。注意,Windows 配置文件中文件夹路径分隔符须为左斜杠,或双右斜杠,否则某些会被转义不被识别。

    [mysqld]
    port=3306
    character_set_server=utf8
    basedir=C:/Software/mysql-5.7.28
    datadir=C:/Software/mysql-5.7.28/data
    server-id=1
    sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    lower_case_table_names=1
    innodb_file_per_table = 1
    log_timestamps=SYSTEM
    
    log-error   = error.log
    slow_query_log = 1
    slow_query_log_file = slow.log
    long_query_time = 5
    log-bin = binlog
    binlog_format = row
    expire_logs_days = 15
    log_bin_trust_function_creators = 1
    secure-file-priv=C:/Softwaremysql-5.7.28/uploads
    
    [client]   
    default-character-set=utf8

    初始化

    进入命令行,切换到 MySQL 的 HOME 目录,然后执行mysqld --initialize-insecure,这种形式默认无密码。

    若想让初始密码保存在日志文件中,可以使用 mysqld --initialize,之后可以在/data/error.log 中查看默认密码。

    若想让初始密码显示在控制台可以使用mysqld --initialize --console

    若在初始化提示缺少 msvcp120.dll,请直接百度搜索安装”vc++2013”即可

    安装并启动

    切换到 bin 目录中,执行 mysqld -install MySQL57 安装,然后再执行 net start MySQL57 启动 MySQL

    cd bin
    mysqld –install MySQL57
    net start MySQL57

    设置登录密码

    先使用 mysql -uroot 登录 MySQL

    mysql -uroot

    如果你在配置文件中更改了端口,导致无法登陆,可使用

    mysql -h127.0.0.1 -P13306 -uroot -p

    -h:指“主机”这里本地用 localhost;

    -P大写(port 的缩写): 端口号默认的是 3306;

    -u:用户(用户以后会有别的用户名);

    -p:密码;

    设置本地登录密码为“Root-123”和远程登录密码“Root-123456”

    SET PASSWORD FOR 'root'@'localhost'= "Root-123";
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root-123456' WITH GRANT OPTION;

    刷新

    FLUSH PRIVILEGES;