• 售前

  • 售后

热门帖子
入门百科

CentOS体系中MySQL5.1升级至5.5.36

[复制链接]
醉于山水 显示全部楼层 发表于 2021-10-25 20:46:22 |阅读模式 打印 上一主题 下一主题
纪录下CentOS 6.4环境将MySQL5.1升级至5.5.36的过程,盼望对各人有个参考。
1.为了安全期间,起首必要备份原有数据
2.卸载原有MySQL,先停止原有的MySQL服务,再查找 find / -name mysql
  1. [root@linuxidc /]# find / -name mysql
  2. /var/lib/mysql
  3. /var/lib/mysql/mysql
  4. /usr/lib64/mysql
复制代码
并移除服务
  1. [root@linuxidc /]# rm -rf /var/lib/mysql
  2. [root@linuxidc /]# rm -rf /var/lib/mysql
  3. [root@linuxidc /]# rm -rf /usr/lib64/mysql
复制代码
3.安装cmake
  1. [root@linuxidc download]# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
  2. [root@linuxidc download]# tarx zvfc cmake-2.8.12.2.tar.gz
  3. [root@linuxidc download]# cd cmake-2.8.12.2
  4. [root@linuxidc cmake-2.8.12.2]# ./configure
  5. [root@linuxidc cmake-2.8.12.2]# make && make install
复制代码
4.下载安装MySQL5.5.36
  1. [root@linuxidc download]# wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz
  2. [root@linuxidc download]# tar xzvf mysql-5.5.36.tar.gz
  3. [root@linuxidc download]# cd mysql-5.5.36
  4. [root@linuxidc mysql-5.5.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql
  5. [root@linuxidc mysql-5.5.36]# make && make install
复制代码
在cmake的过程中出错了,提示Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)
实行以下代码就可以了,实行好之后继续cmake,然后再make && make install
[root@localhost mysql-5.5.36]# rm CMakeCache.txt
[root@localhost mysql-5.5.36]# yum install ncurses-devel
5.接下来必要把之前备份下来的my.cnf文件,复制至/etc/my.cnf
MySQL会读取/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf /.my.cnf。左边的文件优先级是最高的
6.设置好之后,我们就启动mysql,发现有一个问题启动MySQL提示:The server quit without updating PID file(…)失败
检察my.cnf文件设置的日志文件所在/var/log/mysqld.log,错误提示如下
170715 12:31:36 mysqld_safe mysqld from pid file /var/lib/mysql/linuxidc.pid ended
170715 12:57:48 mysqld_safe Starting mysqld daemon with databases from /home/mysql
170715 12:57:48 InnoDB: The InnoDB memory heap is disabled
170715 12:57:48 InnoDB: Mutexes and rw_locks use GCC atomic builtins
170715 12:57:48 InnoDB: Compressed tables use zlib 1.2.3
170715 12:57:48 InnoDB: Initializing buffer pool, size = 128.0M
170715 12:57:48 InnoDB: Completed initialization of buffer pool
170715 12:57:48 InnoDB: highest supported file format is Barracuda.
170715 12:57:48  InnoDB: Waiting for the background threads to start
170715 12:57:49 InnoDB: 5.5.36 started; log sequence number 2645823
170715 12:57:49 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'default-character-set=utf8'
170715 12:57:49 [ERROR] Aborting
此报错是由/etc/my.cnf设置文件下的[mysqld]设置字符集引起的,解决方法:将default-character-set=utf8 改为 character_set_server=utf8
7.通过mysql -u root -p下令连接mysql。(我们之前有安装过mysql,数据库文件还在,所以不必要再添加用户设置权限了)
出现了错误信息:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'
出错原因是我们mysql.sock文件在/usr/lib/mysql/文件夹下
可以实验通过下面下令连接,并检察mysql版本
[root@linuxidc var]# mysql -u root -p -S /usr/lib/mysql/mysql.sock
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.36    |
+-----------+
1 row in set (0.00 sec)

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作