mysql(2)- mysql-5.7.21解压版安装教程

写在前面:mysql不同版本安装方式不尽相同,但正因为某些安装细节方面有些差别,都会导致出错或失败,所以一定找对自己版本对应的安装教程。

简要步骤:

  1. 下载
  2. 解压
  3. 配置环境变量
  4. 创建my.ini文件
  5. 执行mysqld --initialize
  6. 执行mysqld --install
  7. 开启服务net start mysql
  8. 登录mysql
  9. 修改密码
  10. 完毕!

详细步骤:

  1. 下载 官网下载:
  2. 解压 将zip文件解压到本地,本文解压到如下目录:E:downloadsmysqlmysql-5.7.14-winx64
  3. 配置环境变量 第一步: 新增系统环境变量 键名:MYSQL_HOME 值为:E:downloadsmysqlmysql-5.7.14-winx64 第二步:在Path中添加:%MYSQL_HOME%in,注意Path中不同值之间的“;”符号不能省略
  4. 创建my.ini文件 新建一个txt文档,另存为my.ini,放在MySQL安装目录下,内容为: [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=E:downloadsmysqlmysql-5.7.21-winx64 # 设置mysql数据库的数据的存放目录 datadir=E:downloadsmysqlmysql-5.7.21-winx64data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集,注意8.0以上版本需要设置为utf8mb4 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 设置默认时区 default-time_zone=+8:00 #注意:以下配置可以在支持其他功能的时候再单独配置,配置以上参数就ok了 #1.用在数据备份:允许使用select into outfile 来导出数据,并且文本放在何处也没有限制 secure_file_priv= #2.用在二进制日志:使用二进制日志进行备份或者使用复制功能需要用到。 #开启二进制日志,还需要启用一些其他参数来保证最为安全和正确地记录二进制日志 log-bin=mysql-bin sync_binlog=1 #mysql5.7版本只设置了全局系统变量log_bin,没有设置全局系统变量server_id的话,那么MySQL启动不了 server-id = 1 #此参数是设置日志的过期天数,过期的日志将会被自动删除,这有利于减少我们管理日志的工作量,需要修改my.cnf EXPIRE_LOGS_DAYS = 3 //即为日志保存三天,三天之后过期的日志自动删除 注意:不需要创建data文件夹
  5. 执行mysqld --initialize 在命令行执行:mysqld --initialize 执行完毕后会在文件夹下生成一个data文件夹用来存储数据(初始密码为:data文件夹下后缀为err文件中的最后一行,赶紧复制保存)
  6. 执行mysqld --install 在命令行执行:mysqld --install
  7. 开启服务net start mysql 在命令行执行:net start mysql
  8. 登录mysql 在命令行执行:mysql -u root –p
  9. 修改密码(注意:5.7和8.0及以上版本修改密码的命令不同) 5.7 mysql> use mysql mysql> update user set password=password(root) where user=root; mysql> flush privileges; 8.0 mysql> alter user root@localhost identified by 新密码; mysql> flush privileges;
  10. 完毕!
  11. 注意:如果mysql出现问题,执行mysqld -remove,在执行第5步之后的命令即可,密码没有变,数据也不会丢失。
  12. 注意:版本mysql8.x的jdbc升级了,增加了时区(serverTimezone)属性,并且不允许为空。 jdbc的URL:jdbc:mysql://[IP]:[PORT]/[DB]?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true 应用运行一段时间后,发现数据库中登记的时间和正常的时间不一致。 原因:serverTimezone=UTC错误 应该修改为:serverTimezone=GMT%2B8 备注:因为+号符号在url中无法使用,需要转换为%2B
经验分享 程序员 微信小程序 职场和发展