最近遇到一个问题,执行下列语句会报错:

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的更多相关文章

  1. MySQL 升级详细步骤 (包括 Percona)

    MySQL 升级步骤 MySQL 5.1.72 升级到 MySQL 5.5.36 鉴于我在升级的时候遇到的麻烦问题,我觉得有必要把一些细节说清楚,免得引起误解了.感觉官方文档上的升级步骤写的比较简单, ...

  2. mysql升级小结和mysql_upgrade的用途

    http://blog.itpub.net/15480802/viewspace-1412259/ mysql升级 1 升级方式 分为In-place和out-of-place,前者直接覆盖当前版本, ...

  3. MySQL 升级方法指南大全

    原文:MySQL 升级方法指南大全 通常,从一个发布版本升级到另一个版本时,我们建议按照顺序来升级版本.例如,想要升级 MySQL 3.23 时,先升级到 MySQL 4.0,而不是直接升级到 MyS ...

  4. (2.1)mysql升级与降级

    (2.1)mysql升级与降级 转自:深入浅出mysql数据库开发.优化与管理第二版 1.mysql升级 2.mysql降级

  5. MySQL升级后1728错误解决方案

    MySQL升级后1728错误解决方案 错误 # 1728,Cannot load from mysql.proc. The table is probably corrupted 造成原因:MySQL ...

  6. PHPnow For ASP&&ASP.NET&&MongoDB&&MySQL支持VC6.0编译器&&MySQL升级

    可能和大家熟悉的是LAMP,Linux+Apache+Mysql+PHP,在Windows上,可能大家比较熟悉的是WAMP,Windows+Apache+Mysql+PHP,这是一个集成环境,说到集成 ...

  7. mysql升级php找不到pdo

    最近把mysql升级到了5.6,当时工作正常,等周末一来php报错,提示找不到pdo. 甚是奇怪啊,看了一下phpinfo,果然没有mysql的pdo驱动了. 于是用yum又重新安装php-pdo,还 ...

  8. MySQL升级指南

    一 .MySQL升级 1.官方升级策略 注意 升级过程中必须使用具有管理权限的MySQL帐户来执行SQL语句. 1.升级方法 逻辑升级: 涉及使用 mysqldump从旧的MySQL版本导出现有数据 ...

  9. mysql升级的一些踩坑点

    升级的方法一般有两类: 1.利用mysqldump来直接导出sql文件,导入到新库中,这种方法最省事也最保险 缺点:大库的mysqldump费时费力. 2.直接替换掉 mysql 的安装目录和 my. ...

  10. mysql升级到5.7时间戳(timestamp)默认值报错

    原文:mysql升级到5.7时间戳报错 往数据库里创建新表的时候报错: [Err] 1067 - Invalid default value for 'updateTime' DROP TABLE I ...

随机推荐

  1. vuex之getter(二)

    说明 使用vue,如果想对data数据派生一些状态,我们就用到计算属性或者侦听器,同样vux想要派生state中的一些状态,可以在store中定义一个getters属性,它相当于state的计算属性. ...

  2. 18、DHCP

    Dynamic Host Configuration Protocol DHCP的前身:Bootstrap DHCP的封装 DHCP基本知识点 1 .DHCP协议在RFC2131中定义,使用udp协议 ...

  3. CCF_201604-2_俄罗斯方块

    用一个4*2的数组记录方块的位置,每一次移动前判断每个方块位置下面是否已有方块,直到不能移动,将该数组更新到原来的图上,输出即可. #include<cstdio> #include< ...

  4. Codeforces Round #600 (Div. 2) E. Antenna Coverage

    Codeforces Round #600 (Div. 2) E. Antenna Coverage(dp) 题目链接 题意: m个Antenna,每个Antenna的位置是\(x_i\),分数是\( ...

  5. Go语言实现:【剑指offer】顺时针打印矩阵

    该题目来源于牛客网<剑指offer>专题. 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 例如,如果输入如下4 X 4矩阵:1 2 3 4 5 6 7 8 9 10 11 ...

  6. Linux 工作机初始化操作

    # apt 依赖包安装 sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libs ...

  7. java服务器端线程体会

    一个完整的项目包括服务器和客服端 服务器端初步编写: (1) 服务器端应用窗口的编写 (服务器类Server): 包括窗口和组件的一些设置, 添加一些客服端的元素,如客服端在线用户表(Vector), ...

  8. 手写-- K-means++

    1. K-means++原理 K均值聚类属于启发式方法,不能保证收敛到全局最优,初始中心的选择会直接影响聚类结果.K-means是随机选择样本点作为聚类中心,容易造成算法局部收敛或者需要较多迭代次数, ...

  9. 并发编程之Master-Worker模式

    我们知道,单个线程计算是串行的,只有等上一个任务结束之后,才能执行下一个任务,所以执行效率是比较低的. 那么,如果用多线程执行任务,就可以在单位时间内执行更多的任务,而Master-Worker就是多 ...

  10. mysql 支持emoji表情

    在mysql插入emoji表情,出现错误: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8A' for column ' ...