最近遇到一个问题,执行下列语句会报错:
CREATE TABLE `t_user` (
`USER_ID` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`USERNAME` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名',
`PASSWORD` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',
`DEPT_ID` bigint(20) NULL DEFAULT NULL COMMENT '部门ID',
`EMAIL` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',
`MOBILE` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系电话',
`STATUS` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '状态 0锁定 1有效',
`CREATE_TIME` datetime(0) NOT NULL COMMENT '创建时间',
`MODIFY_TIME` datetime(0) NULL DEFAULT NULL COMMENT '修改时间',
`LAST_LOGIN_TIME` datetime(0) NULL DEFAULT NULL COMMENT '最近访问时间',
`SSEX` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别 0男 1女 2保密',
`AVATAR` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
`DESCRIPTION` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
PRIMARY KEY (`USER_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 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.17-winx64
datadir = E:\Software\mysql-5.7.17-winx64\data
port = 3306
default-character-set = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[WinMySQLadmin]
Server = E:\Software\mysql-5.7.17-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 '123456';
输入:
flush privileges;
刷新。
输入
quit;
退出mysql。
之前备份的data目录,复制各数据库目录到新版MySQL的data目录,就可以了。
添加到环境变量
计算机--系统属性--高级系统设置--环境变量--在系统变量中找到path,点击编辑,然后把bin的路径复制到path里,点击确定,结束mysql的环境变量编辑。