环境

mysql安装在centos上,需要升级。

mysql的版本是

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.1.73 |
+-----------+
1 row in set (0.00 sec)

centos的版本是

lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.9 (Final)
Release: 6.9
Codename: Final

下载新版本

访问https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/,下载跟centos版本相对应的rpm文件。

这个rpm会修改库文件,为了后续yum安装用。

需要登录。

我下载了mysql57-community-release-el6-11.noarch.rpm

安装过程

安装RPM

rpm -Uvh mysql57-community-release-el6-11.noarch.rpm

安装mysql

yum repolist enabled | grep mysql

#yum install -y mysql-community-server

#service mysqld start

安装成功,但是启动失败。

解决启动失败的问题

mysql.user table is damaged. Please run mysql_upgrade

查到的解决方案

删除/var/lib/mysql下的三个文件:ibdata1、ib_logfile0、ib_logfile1;
然后使用如下命令,重新初始化mysql
mysqld --initialize --user=mysql

执行最后一句命令时,出现:

2017-12-14T01:50:57.809614Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2017-12-14T01:50:57.809639Z 0 [ERROR] Aborting

看起来是还有数据文件,要手动删掉。

mysql配置文件是/etc/my.cnf

里面定义了数据文件和日志文件的位置

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock symbolic-links=0 log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

删除数据目录下全部文件

#rm -rf /var/lib/mysql/*

重新初始化mysql

#mysqld --initialize --user=mysql

启动mysql,成功。

#service mysqld start

修改mysql配置文件/etc/my.cnf,增加

[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

重新启动mysql,成功。

#service mysqld restart

java数据库连接

修改为

jdbc:mysql://1.1.1.1:3306/hhtd_wechat?zeroDateTimeBehavior=convertToNull&&autoReconnect=true

注意,不要characterEncoding

mysql版本升级的更多相关文章

  1. MySQL版本升级之5.6到5.7

    两种升级方式 In-Place Upgrade: Involves shutting down the old MySQL version, replacing the old MySQL binar ...

  2. phpstudy中 MySQL版本升级

    问题由来:   在把数据库导入到本地库时,数据库出现报错    Error : Invalid ON UPDATE clause for 'update_time' column   查了下度娘说  ...

  3. MySQL版本升级参考资料【转】

    MySQL升级参考资料 MySQL 升级的最佳实践 - 技术翻译 - 开源中国社区https://www.oschina.net/translate/mysql-upgrade-best-practi ...

  4. ubuntu中mysql版本升级到5.7

    0 前言 前几天图书馆说服务器(Ubuntu14.04)有安全漏洞,不按时修复会关停. 看了一下漏洞清单,主要是ssh和mysql的版本问题. 把mysql升级了一下,升到了5.7,升级之前还备份了数 ...

  5. MySQL版本升级5.6到5.7版本

    从5.6升级到5.7版本,5.7的版本为5.7.17 升级的过程还是比较简单,需要注意几个点 1.下载对应的包 2.备份整个数据库 3.使用升级参数 1.下载 # wget "https:/ ...

  6. phpStudy中MySQL版本升级到5.7.17方法

    本文主要给大家介绍了关于phpStudy中升级MySQL版本到5.7.17的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧.希望能帮 ...

  7. 【0.1】mysql版本升级(5.6升级到5.7)

    目录 [1].升级操作 [2].mysql 5.6安装(二进制) [3].mysql 5.7安装(二进制) [1].升级操作 核心步骤 [1.1]停止mysql 5.6 [1.2]把环境变量引用到My ...

  8. 【mysql升级步骤】windows mysql版本升级 ,mysql 5.6 升级到5.7.27

    最近博主由于工作原因需要把之前安装好的的mysql 5.6.44版本卸载,然后安装mysql 5.7.*版本. 前提:为什么要升级到5.7版本? 因为博主在5.6版本上执行脚本时候报出异常:to yo ...

  9. mysql低版本升级到5.7

    升级步骤 #安全的停止数据库的运行 /etc/init.d/mysql.server stop # 解压mysql tar包 tar zxf mysql-5.7.28-linux-glibc2.12- ...

随机推荐

  1. K-Means和图片压缩

    通俗的介绍这种压缩方式,就是将原来很多的颜色用少量的颜色去表示,这样就可以减小图片大小了.下面首先我先介绍下K-Means,当你了解了K-Means那么你也很容易的可以去理解图片压缩了,最后附上图片压 ...

  2. STM32基础问题分析——PWM配置

    STM32基础问题分析--PWM配置 在使用STM32F103产生固定频率.固定占空比的PWM波时,虽然有官方以及众多开发板提供的例程,但是关于有点问题并没有说的很清晰,并且<STM32F10X ...

  3. Composer使用笔记

    安装 1.windows中安装Composer 一般来说,windows下安装composer有两种办法,一种是直接下载并运行Composer-Setup.exe,这种方法在中国似乎很难完成安装.另一 ...

  4. HTML5技术分享 ES2017继发与并发

    大家都知道,async函数的返回值是 Promise 对象,这比 Generator 函数的返回值是 Iterator 对象方便多了.你可以用then方法指定下一步的操作. 进一步说,async函数完 ...

  5. Oracle漏洞分析(tns_auth_sesskey)

    p216 Oracle漏洞分析: 开启oracle: C:\oracle\product\\db_1\BIN\sqlplus.exe /nolog conn sys/mima1234 as sysdb ...

  6. let和const命令

    let命令 1.let用来声明变量,类似于var,但只在代码块内有效. { let a = 1; var b = 2; } console.log(a); //a is not defined con ...

  7. Openning

    In order to imporve my english writing skill and enhance my understanding of  programming ,I'm setti ...

  8. 二维,多维数组排序array_multisort()函数的使用

    对于数组的排序,很很多方法:随便百度了一下 sort() - 以升序对数组排序 rsort() - 以降序对数组排序 asort() - 根据值,以升序对关联数组进行排序 ksort() - 根据键, ...

  9. 圆形的ImageView

    转载自gitHub的ImageView,因为本身就是可用的,也没什么好说的,拷贝回去用就是了,可以设置除了背景,还可以设置边框什么的,比起CardView设置圆角,功能更加强大. import and ...

  10. Winform控件Tag使用规范

    背景 Tag在WinForm控件中经常被用来存储临时数据,类型为object,但是当程序中多个地方使用到Tag时,容易造成Tag使用的混乱,Tag是如此重要的一个属性,应该要好好考虑下如何有效的使用T ...