• mysql版本升级


    环境

    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

  • 相关阅读:
    微信小程序 解决disableScroll无法禁止小程序下拉的问题和视频铺满全屏尺寸
    微信小程序无法获取手机号 error:改appid没有权限
    js localeCompare() 根据汉字首字母进行排序
    vue 引入本地JS中的json 数据解析
    vue 打包优化 外部资源 elementUI axios等引入
    vue中 高德地图获取定位
    vue 与qrcodejs2 生成的二维码 logo 居中
    Mac vue-cli2.x版本升级3.x方法
    微信小程序 cover-view在 Video(原生组件)中遇到的问题
    Mac安装Vue-cli时 提示bash: vue: command not found问题
  • 原文地址:https://www.cnblogs.com/wardensky/p/8036827.html
Copyright © 2020-2023  润新知