zoukankan      html  css  js  c++  java
  • Windows安装解压版Mysql

    下载

    官网上下载ZIP然后解压

    配置my.ini

    解压后根目录新建一个my.ini

    内容如下

    基础配置

    [mysql]
    #设置mysql客户端默认字符集
    default-character-set=utf8
    
    [mysqld]
    #设置mysql的安装目录
    basedir=D:ProgramFiles_QYmysql-5.7.24-winx64
    #设置mysql数据库的数据存储目录,必须是data,或者是\xxx\data
    datadir=D:ProgramFiles_QYmysql-5.7.24-winx64data
    #服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    #设置端口
    port = 3306
    #允许最大连接数
    max_connections=200
    #创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    
    [client]
    port=3306
    default-character-set=utf8

    全配置

    [mysql]
    #设置mysql客户端默认字符集
    default-character-set=utf8
    
    [mysqld]
    #设置mysql的安装目录
    basedir=D:ProgramFiles_QYmysql-5.7.24-winx64
    #设置mysql数据库的数据存储目录,必须是data,或者是\xxx\data
    datadir=D:ProgramFiles_QYmysql-5.7.24-winx64data
    
    #错误日志
    log-error=D:ProgramFiles_QYmysql-5.7.24-winx64logerror.log
    
    #查询日志
    general_log=on
    general_log_file=D:ProgramFiles_QYmysql-5.7.24-winx64logmysql.log
    #日志输出到文件/数据库表,都输出用,分割
    #log_output='FILE'  #,TABLE
    
    #开启慢查询日志
    slow_query_log=on
    #慢查询中记录没有使用索引的query
    log-queries-not-using-indexes=on
    #慢查询日志路径
    slow-query-log-file=D:ProgramFiles_QYmysql-5.7.24-winx64log\slowquery.log  
    #慢查询时间,这里为2秒,超过2秒会被记录
    long_query_time=2
    
    #二进制日志文件
    server_id=1918         
    log_bin = mysql-bin
    binlog_format = ROW
    
    #服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    #设置端口
    port=3306
    #允许最大连接数
    max_connections=200
    #创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    #忘记初始密码用
    #skip-grant-tables
    #导出限制设置
    secure_file_priv = null
    #MySql5.6.6弃用了explicit_defaults_for_timestamp这个系统变量,高于5.6.6时要设置此变量不然timestamp默认值会报错Invalid default value
    explicit_defaults_for_timestamp=true
    #mysql5.7对group by语法更严格了,只能select 分组的字段和聚合函数,其他字段不允许出现在select列中,如果不想线上报错需要写此语句
    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    
    [client]
    port=3306
    default-character-set=utf8
    #character-set-server=utf8
    loose_default-character-set=utf8

    配置环境变量

    win+R输入sysdm.cpl,找到环境变量,添加MYSQL_HOME系统变量,值为mysql解压路径。

    在Path后面加上%MYSQL_HOME%in;

    将Mysql安装为服务

    安装默认的Mysql服务,读取指定my.ini选项配置文件中的设置,这里最好把MySQL Service换成Mysql

    mysqld --install "MySQL Service" --defaults-file="D:ProgramFiles_QYmysql-5.7.24-winx64my.ini"

    注意:

    MySQL Service为服务名,带空格需用引号(最好就写mysql,不然启动/停止/移除服务等都要用双引号)

    D:ProgramFiles_QYmysql-5.7.24-winx64my.ini为my.ini路径,带空格需用引号

    可能遇到的问题

    MSVCR120.dll文件丢失错误的解决方案

    下载 VC redist packages for x64,下载完成,点击运行即可

    初始化Mysql

    mysqld --defaults-file="D:ProgramFiles_QYmysql-5.7.24-winx64my.ini" --initialize

    初始化完毕后,mysql目录下面会出现data文件夹

    启动Mysql

    net start "mysql service"

    停止MySQL服务,输入命令:net stop "mysql service"

    移除MySQL服务,输入指令:mysqld -remove "mysql service"

    之所以这里都用"mysql service",就是因为上面install时写的带空格,写mysql就不存在这个问题。这里也可以移除后再重装。

    更改密码

    再开启另外一个cmd窗口,输入mysql命令。版本不同,有的默认为空密码,有的默认为临时密码(5.7版本以上)

    mysql -u root -p -h 127.0.0.1

    输入临时密码(在指定的datadir目录下的XXX.err日志文件里,A temporary password is generated for root@localhost)

    更改系统库

    use mysql

    更改root密码

    update user set authentication_string=password('root') where user='root'

    或者

    set password=password(‘root');

    或者出现如下提示时,用alert user更改密码。

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

    重新登录

    mysql -u root -p 123456 -h 127.0.0.1

    mysql5.7临时密码过期问题

    解决方案

    删掉data目录,重新初始化mysql。(不知道为什么,我初始化了三次才登进去,用临时密码时连接最好用Navicat测试连接,连接成功用Navicat连进去也会让你初始化密码)。

    也可以用下面这种方法

    执行

    mysql_secure_installation

    输入上面生成的临时密码

    然后登陆让你设置新密码,这里会让你安装一个验证密码安全度的插件,装了就要遵守那个规则(low安全度的都要8位),为了在开发中不添加麻烦,我们选择不安装。

    允许其他电脑连接

    登录mysql -u root -p

    允许所有IP(*.*)以root和root登录此服务器(%)

    grant all privileges on *.* to root@'%'  identified by 'root'

    开放防火墙端口3306

    打开控制面板,找到防火墙高级选项,选择入站规则,添加指定端口TCP为3306

    可能遇到问题

    启动时报错,启动不了。然后查看日志

    发现初始化时不认识defaults-file,网上查询一下,发现是参数写倒了应该把

    mysqld --initialize --defaults-file="D:ProgramFiles_QYmysql-5.7.24-winx64my.ini"

     改为(前文已更正)

    mysqld --defaults-file="D:ProgramFiles_QYmysql-5.7.24-winx64my.ini" --initialize
  • 相关阅读:
    BZOJ 2326 数学作业
    BZOJ 4448 情报传递
    BZOJ 4443 小凸玩矩阵
    BZOJ 1852 最长不下降序列
    BZOJ 4373 算术天才⑨与等差数列
    68285
    65656556
    D. Points in rectangle
    恐怖的怪物
    再战斐波那契
  • 原文地址:https://www.cnblogs.com/aeolian/p/10245255.html
Copyright © 2011-2022 走看看