关于mysql5.7的一些变化

最近接了个项目,使用的数据库是5.7的,开始没太在意,但是在接手的过程中发送了些小插曲,特意记录下来。

首先,我想自己安装个noinstall版本的,结果发信下载下来的和之前版本的不一样,没有data目录,my.ini 里几乎没有内容,看来使用以前的办法是不行了,看了下官方的文档。基本有下面3步需要做,

  • 确定好mysql的根目录,mysql的数据存储目录,按我的情况 D:/mysql 是根目录,我自己在这个目录下建了个data目录做数据存储目录 D:/mysql/data ,然后配置在my.ini 的文件里。

basedir = "D:/MySql-5.7" datadir = "D:/MySql-5.7/data" port = 3307

  • 初始化数据库,需要在D:/mysql/bin 目录下,注意是bin目录下, 执行脚本命令: mysqld.exe --initialize --console。执行完后会有下面的类似结果出现。最后的是root用户的密码,需要记下来。而且我接下来使用Mysql WorkBench 连接的时候提醒,需要修改初试密码才能连接,这个不知道在别的软件上是不是也存在,因为Workbench是不能看到mysql库的。
  • 最后其实就可以启动mysql了,使用命令 mysqld.exe ,然后使用命令行连接 mysql.exe -P3307 -p,回车,然后输入上面图片里的密码。

修改密码的时候又遇到一个问题,5.7的版本里已经没有password字段了。而是出现了authentication_string,password_expired,password_last_changed,password_lifetime 这几个字段,修改当前登录的root可以直接使用 set password=password(‘新密码‘); flush privileges; 然后就生效了。这时也可以使用Mysql Workbench连接了。其他的用户我试了也可以把 authentication_string 当成以前的password 字段来修改密码,例如 update user set authentication_string=password(‘new_pwd‘) where User=‘root‘。然后flush privileges。来使之生效。其他的字段再研究。

搜了下还有些有意思的新东西,下面的是摘自其他博客的。

一个是支持json,直接有个json类型,一般的客户端软件还不支持,手动建了一个,打算用workbench修改,直接报定义错误,这个换了个新的版本 6.3.7就支持了。

在ONLY_FULL_GROUP_BY中具有更高的自由度

在InnoDB中支持空间数据类型

更好地支持对亚洲语言的处理

具体看这里吧

时间: 2025-01-31 07:37:58

关于mysql5.7的一些变化的相关文章

mysql并行复制功能

mysql5.7版本相对与mysql5.6最大的变化在并行复制上面,5.6只支持schema,也就是基于库的,5.7则支持基于组事务的并行复制. 有几个重要的参数 master_info_repository 开启MTS功能后,务必将参数master_info_repostitory设置为TABLE,这样性能可以有50%~80%的提升.这是因为并行复制开启后对于元master.info这个文件的更新将会大幅提升,资源的竞争也会变大.在之前InnoSQL的版本中,添加了参数来控制刷新master.

mysql5.6 timestamp 变化,数据库版本升级到5.6需要注意此字段

1.版本,实测环境为centos6.6+mysql 5.6.25 社区版64bit select @@version; +------------+ | @@version  | +------------+ | 5.6.25-log | +------------+ 2.系统参数应设置为on ,如下图: show variables like '%timestamp%'; +---------------------------------+-------------------+ | Var

mysql5.5的安装与配置(亲测版)

mysql5.5.x的编译安装 说明:5.5和5.1差不多,只是在编译时增加了一个cmake,其他基本一样 CentOS 6 mysql5.5安装配置 1 安装所需软件 2 安装cmake 3 tar.gz形式安装mysql 4 配置与启动 5 rpm形式安装mysql 6 mysql配置参数详细说明 MySQL自5.5版本以后,就开始使用cmake 编译工具了. 开始: 1 安装所需要系统库相关库文件 yum install -y gcc gcc-c++ gcc-g77 autoconf au

MySQL从5.5升级到5.6,TIMESTAMP的变化

前言 前段时间,系统MySQL从5.5升级到了5.6,系统出现了大量的异常.大部分异常引起原因是由于TIMESTAMP的行为发生了变化. TIMESTAMP在MySQL5.5中的行为 第一个未设置默认值的TIMESTAMP NOT NULL字段隐式默认值: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 后面未设置默认值的TIMESTAMP NOT NULL字段隐式默认值: 0000-00-00 00:00:00 TIMESTAMP NOT NULL字

MHA部署笔记(centos6+mysql5.6)

环境及软件版本: CentOS6.5x86_64 MySQL5.6.34编译安装版 MHA版本:mha4mysql-manager-0.56-0.el6.noarch.rpm mha4mysql-node-0.56-0.el6.noarch.rpm 节点角色: node93:10.1.20.93   默认主库 node94:10.1.20.94   从库1,原先主库宕机后可提升为主库[mha管理节点也部署在这台机器上] node95:10.1.20.95   从库2,不允许提升为主库 准备的VI

Windows 7 下安装mysql-5.7.18-winx64.zip

mysql-5.7以后压缩包安装有了不小的变化 第一步:到官网下载https://dev.mysql.com/downloads/mysql/ 第二步:解压到一个文件夹 第三步:配置环境变量 把;%MYSQL_HOME%\bin插入到Path的最后面 第四步:以管理员的身份运行命令行,按win+R 输入cmd,点鼠标右键以管理员身份运行 第五步:进入到D:\mysql-5.7.18-winx64\bin 初始化数据: mysqld --initialize-insecure --user=mys

centos7.2 Mysql5.7.15版本 一主一从复制

1.概述 2.所需软件 3.MySQL软件的安装(rpm安装,两台服务器上都要安装数据库软件) 3.1.查询服务器上是否已经安装的mysql # rpm -aq | grep mariadb 3.2.先卸载旧的版本 # 如果是生产环境,请谨慎卸载,这个包可能会影响其它软件的使用,如果不卸载,安装mysql5.7会报错,即安装不了. 卸载旧版本mariadb rpm -e mariadb-libs –nodeps 3.3.安装软件 //新建msyql用户禁止登录shell groupadd mys

关于mysql5.7的160万qps

http://dimitrik.free.fr/blog/archives/2015/10/mysql-performance-yes-we-can-do-more-than-16m-qps-sql-on-mysql-57-ga.html 看到上面这个图后,我终于知道网上流传mysql5.7比mysql5.6快3倍的依据了,它的测试硬件如下:  Intel(R) Xeon(R) CPU E7-8890 v3 (codename Haswell-EX)  4 CPU sockets x 18 co

Mysql5.6主从复制-基于binlog

MySQL5.6开始主从复制有两种方式:基于日志(binlog):基于GTID(全局事务标示符). 此文章是基于日志方式的配置步骤 环境: master数据库IP:192.168.247.128slave数据库IP:192.168.247.130mysql版本:5.6.14 1.修改master配置文件并重启服务: [mysqld]server-id=11binlog-ignore-db=test #不记录binlogreplicate-ignore-db=test #不复制test库的binl