mysql升级到5.7
最近遇到一个问题,执行下列语句会报错:
CREATE TABLE `t_user` (
`USER_ID` bigint() NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`USERNAME` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名',
`PASSWORD` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',
`DEPT_ID` bigint() NULL DEFAULT NULL COMMENT '部门ID',
`EMAIL` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',
`MOBILE` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系电话',
`STATUS` char() CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '状态 0锁定 1有效',
`CREATE_TIME` datetime() NOT NULL COMMENT '创建时间',
`MODIFY_TIME` datetime() NULL DEFAULT NULL COMMENT '修改时间',
`LAST_LOGIN_TIME` datetime() NULL DEFAULT NULL COMMENT '最近访问时间',
`SSEX` char() CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别 0男 1女 2保密',
`AVATAR` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
`DESCRIPTION` varchar() CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
PRIMARY KEY (`USER_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用户表' ROW_FORMAT = Dynamic;
具体说是第9行的语法错误,提示我是否因为mysql版本导致。然后查看自己的mysql版本:
mysql -u root -p
输入密码查看打印的日志,即可看到mysql版本(当然你得把mysql添加到环境变量,否则得去myql的bin下)。
发现我的是mysql5.5,所以来升级到5.7吧。
这里就直接把老版卸载了:
1.首先备份自己数据,一般在mysql下的data文件夹,或者C\ProgramData\MySQL\data。
2.管理员身份运行命令行,输入
net stop mysql
命令,停止mysql服务。
3.输入
sc delete mysql
命令,删除mysql服务。
4.卸载当前版本MySQL。
安装MySQL5.7
1.下载mysql:

可以下载上面的安装包,我这里下载的是zip。
解压MySQL 5.7.17压缩包到对应目录(示例:E:\Software\mysql-5.7.17-winx64)。
2.在根目录下添加my.ini文件。内容如下:
[mysqld]
basedir = E:\Software\mysql-5.7.-winx64
datadir = E:\Software\mysql-5.7.-winx64\data
port =
default-character-set = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[WinMySQLadmin]
Server = E:\Software\mysql-5.7.-winx64\bin\mysqld.exe
user = root
password =
[client]
default-character-set = utf8
注意自己安装的路径是否匹配。
3.安装mysql服务。
管理员身份进入命令行,进入bin目录(切换盘符直接输入E),输入mysqld --initialize命令。
输入mysqld --install命令,安装MySQL服务。
再执行net start mysql启动MySQL。
MySQL 5.7初始化话是创建了临时密码,在data目录下以管理员名称命名的err文件:

输入 mysql -u root -p 命令,让你输入密码,单击右键复制密码。

进入mysql,修改密码为123456,输入(这是sql语句,有分号结束):
alter user 'root'@'localhost' identified by '';
输入:
flush privileges;
刷新。
输入
quit;
退出mysql。
之前备份的data目录,复制各数据库目录到新版MySQL的data目录,就可以了。
添加到环境变量
计算机--系统属性--高级系统设置--环境变量--在系统变量中找到path,点击编辑,然后把bin的路径复制到path里,点击确定,结束mysql的环境变量编辑。
mysql升级到5.7的更多相关文章
- MySQL 升级详细步骤 (包括 Percona)
MySQL 升级步骤 MySQL 5.1.72 升级到 MySQL 5.5.36 鉴于我在升级的时候遇到的麻烦问题,我觉得有必要把一些细节说清楚,免得引起误解了.感觉官方文档上的升级步骤写的比较简单, ...
- mysql升级小结和mysql_upgrade的用途
http://blog.itpub.net/15480802/viewspace-1412259/ mysql升级 1 升级方式 分为In-place和out-of-place,前者直接覆盖当前版本, ...
- MySQL 升级方法指南大全
原文:MySQL 升级方法指南大全 通常,从一个发布版本升级到另一个版本时,我们建议按照顺序来升级版本.例如,想要升级 MySQL 3.23 时,先升级到 MySQL 4.0,而不是直接升级到 MyS ...
- (2.1)mysql升级与降级
(2.1)mysql升级与降级 转自:深入浅出mysql数据库开发.优化与管理第二版 1.mysql升级 2.mysql降级
- MySQL升级后1728错误解决方案
MySQL升级后1728错误解决方案 错误 # 1728,Cannot load from mysql.proc. The table is probably corrupted 造成原因:MySQL ...
- PHPnow For ASP&&ASP.NET&&MongoDB&&MySQL支持VC6.0编译器&&MySQL升级
可能和大家熟悉的是LAMP,Linux+Apache+Mysql+PHP,在Windows上,可能大家比较熟悉的是WAMP,Windows+Apache+Mysql+PHP,这是一个集成环境,说到集成 ...
- mysql升级php找不到pdo
最近把mysql升级到了5.6,当时工作正常,等周末一来php报错,提示找不到pdo. 甚是奇怪啊,看了一下phpinfo,果然没有mysql的pdo驱动了. 于是用yum又重新安装php-pdo,还 ...
- MySQL升级指南
一 .MySQL升级 1.官方升级策略 注意 升级过程中必须使用具有管理权限的MySQL帐户来执行SQL语句. 1.升级方法 逻辑升级: 涉及使用 mysqldump从旧的MySQL版本导出现有数据 ...
- mysql升级的一些踩坑点
升级的方法一般有两类: 1.利用mysqldump来直接导出sql文件,导入到新库中,这种方法最省事也最保险 缺点:大库的mysqldump费时费力. 2.直接替换掉 mysql 的安装目录和 my. ...
- mysql升级到5.7时间戳(timestamp)默认值报错
原文:mysql升级到5.7时间戳报错 往数据库里创建新表的时候报错: [Err] 1067 - Invalid default value for 'updateTime' DROP TABLE I ...
随机推荐
- CSDN
链接:https://blog.csdn.net/shaoyedeboke
- 物流跟踪API-快递单推送
上一篇文章我们讲解了订阅服务功能.我们已经完成了如何把物流订单订阅到快递鸟,快递鸟也能接收到我们的订单信息,接下来就需要快递鸟实时的将最新的物流轨迹推送到我们服务器,我们既然要接收快递鸟的信息,就需要 ...
- FFMPEG学习----遍历所支持的封装格式
#include <stdio.h> extern "C" { #include "libavformat/avformat.h" }; int m ...
- sizeof('a')
#include <iostream> using namespace std; int main(void) { cout << sizeof('a') << e ...
- 通过欧拉计划学Rust编程(第54题)
由于研究Libra等数字货币编程技术的需要,学习了一段时间的Rust编程,一不小心刷题上瘾. 刷完欧拉计划中的63道基础题,能学会Rust编程吗? "欧拉计划"的网址: https ...
- hdu 1159求最长公共子序列
题目描述:给出两个字符串,求两个字符串的公共子序列(不是公共子串,不要求连续,但要符合在原字符串中的顺序) in: abcfbc abfcab programming contest abcd mnp ...
- Cheat sheet PySpark SQL Python(PySpark 速查表)
- Java线程核心基础(上)
Java线程核心基础(上) 一.实现多线程 根据Oracle官方文档,目前推荐的创建线程方法主要有两种,分别是继承Thread类和实现Runnable接口.通过阅读Thread类源码,可以发现二者不同 ...
- 9.3.2 map端连接-CompositeInputFormat连接类
1.1.1 map端连接-CompositeInputFormat连接类 (1)使用CompositeInputFormat连接类需要满足三个条件: 1)两个数据集都是大的数据集,不能 ...
- 鸭子类型 - Duck Typing
还是先看定义 duck typing, 鸭子类型是多态(polymorphism)的一种形式.在这种形式中,不管对象属于哪个, 也不管声明的具体接口是什么,只要对象实现了相应的方法,函数就可以在对象上 ...