windows+mysql+解压版_Windows安装解压版Mysql

下载

df3ff04e7e1effb4182c7a9bcd81fe9d.png

配置my.ini

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

b3ab690d6c167ffd8340c208b53dfba7.png

内容如下

[client]: 所有mysql客户端程序读取的配置块,包括bin下面的很多工具,例如mysql、mysqladmin、mysqlcheck、mysqldump、mysqlimport、mysqlshow、mysqlslap。

[mysqldump]: 只有mysqldump这个客户端程序才会读取的配置文件。

[mysql]: 只有mysql这个客户端程序才会读取的配置块,即mysql命令行。

[server]: 所有服务端如mysqld会读取的配置块。

[mysqld]: mysql服务端程序mysqld 和 mysqld_safe ,mysqld_multi 的配置文件。

基础配置

[mysql]#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]#设置mysql的安装目录

basedir=D:\ProgramFiles_QY\mysql-5.7.24-winx64#设置mysql数据库的数据存储目录,必须是data,或者是\\xxx\\data

datadir=D:\ProgramFiles_QY\mysql-5.7.24-winx64\data#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8#设置端口

port = 3306

#允许最大连接数

max_connections=200

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

[client]

port=3306default-character-set=utf8

全配置

[mysql]#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]#设置mysql的安装目录

basedir=D:\ProgramFiles_QY\mysql-5.7.24-winx64#设置mysql数据库的数据存储目录,必须是data,或者是\\xxx\\data

datadir=D:\ProgramFiles_QY\mysql-5.7.24-winx64\data#错误日志

log-error=D:\ProgramFiles_QY\mysql-5.7.24-winx64\log\error.log

#查询日志

general_log=on

general_log_file=D:\ProgramFiles_QY\mysql-5.7.24-winx64\log\mysql.log

#日志输出到文件/数据库表,都输出用,分割

#log_output='FILE' #,TABLE

#开启慢查询日志

slow_query_log=on#慢查询中记录没有使用索引的query

log-queries-not-using-indexes=on#慢查询日志路径

slow-query-log-file=D:\ProgramFiles_QY\mysql-5.7.24-winx64\log\\slowquery.log

#慢查询时间,这里为2秒,超过2秒会被记录

long_query_time=2

#二进制日志文件

server_id=1918log_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=3306default-character-set=utf8#character-set-server=utf8

loose_default-character-set=utf8

配置环境变量

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

f7ccdd5045ded6ae416a549ad1823467.png

在Path后面加上%MYSQL_HOME%\bin;

77e0420148e37b37bf6db6f1d053fe2f.png

将Mysql安装为服务

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

mysqld --install "MySQL Service" --defaults-file="D:\ProgramFiles_QY\mysql-5.7.24-winx64\my.ini"

注意:

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

D:\ProgramFiles_QY\mysql-5.7.24-winx64\my.ini为my.ini路径,带空格需用引号

2e9f5bf21ce0e73935804e3dda618294.png

可能遇到的问题

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

初始化Mysql

mysqld --defaults-file="D:\ProgramFiles_QY\mysql-5.7.24-winx64\my.ini" --initialize

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

启动Mysql

net start "mysql service"

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

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

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

如果启动失败去看计算机管理下面的Windows日志。

更改密码

再开启另外一个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更改密码。

39ace94b3dcc0bf200a60a4df3312380.png

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

重新登录

mysql -u root -p 123456 -h 127.0.0.1

mysql5.7临时密码过期问题

de27fd52da2d82eef9db88dd03f58920.png

5a67e8e43fd229f1d495a7c7629c15f1.png

解决方案

删掉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

可能遇到问题

如果初始化时报错或者启动报错

右击我的电脑 -》管理 -》诊断 -》 事件查看器 -》Windows日志 -》 应用程序。可以看到错误的具体内容,比如没有新建log文件夹,或者多次初始化没有清空data文件夹之类的问题。

ab724b5ba5c0975abe7265777b941569.png

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

456e9a78e6e8f89eccf545e17934381e.png

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

mysqld --initialize --defaults-file="D:\ProgramFiles_QY\mysql-5.7.24-winx64\my.ini"

改为(前文已更正)

mysqld --defaults-file="D:\ProgramFiles_QY\mysql-5.7.24-winx64\my.ini" --initialize

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值