摘要:源码升级升级的方法一般有两类利用来直接导出文件,导入到新库中,这种方法是最省事儿的,也是最保险的,缺点的话,也显而易见,大库的费时费力。缺点的话,跨版本升级不推荐这么做,比如升级到升级到等。本文采用的是第二种方法升级。
mysql源码升级
升级的方法一般有两类:
1.利用mysqldump来直接导出sql文件,导入到新库中,这种方法是最省事儿的,也是最保险的,缺点的话,也显而易见,大库的mysqldump费时费力。
2.直接替换掉mysql的安装目录和my.cnf,利用mysql_upgrade 来完成系统表的升级,这种方法需要备份原有的文件,但属于物理拷贝,速度较快。缺点的话,跨版本升级不推荐这么做,比如mysql5.1升级到mysql5.6,mysql5.5升级到mysql5.7等。
本文采用的是第二种方法升级。
MySQL当前版本
[root@localhost ~]# /usr/local/mysql/bin/mysql -V /usr/local/tdoa/mysql/bin/mysql Ver 14.14 Distrib 5.5.36, for Linux (x86_64) using readline 5.1
备份my.cnf、MySQL安装目录、MySQL数据目录
[root@localhost ~]# cp -p /etc/init.d/mysql /etc/init.d/mysql.old [root@localhost ~]# cp -p /etc/my.cnf /etc/my.cnf.old [root@localhost ~]# cp -rp /usr/local/mysql /usr/local/mysql.old [root@localhost ~]# rm -rf /usr/local/mysql
安装最新版本的MySQL
[root@localhost ~]# tar xvf mysql-5.6.37.tar.gz [root@localhost ~]# cd mysql-5.6.37 [root@localhost ~]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/tdoa/mysql -DMYSQL_DATADIR=/usr/local/tdoa/data5 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DDEFAULT_CHARSET=utf8 -DMYSQL_TCP_PORT=3336 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DWITH_DEBUG=0 [root@localhost ~]# make [root@localhost ~]# make install [root@localhost ~]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf [root@localhost ~]# cat /etc/my.cnf.old > /etc/my.cnf [root@localhost ~]# cp -p /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql [root@localhost ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/data5 [root@localhost ~]# chown mysql.mysql -R /usr/local/tdoa/mysql [root@localhost ~]# chown mysql.mysql -R /usr/local/tdoa/data5 [root@localhost ~]# /etc/init.d/mysql start [root@localhost ~]# ps -ef |grep mysql [root@localhost ~]# /etc/init.d/mysql stop [root@localhost ~]# /usr/local/data5 /usr/local/data5.newold [root@localhost ~]# mv /usr/local/data5.old /usr/local/data5 [root@localhost ~]# /etc/init.d/mysql start [root@localhost ~]# /usr/local/mysql/bin/mysql_upgrade -uroot -pxxxx
升级后的MySQL版本
[root@localhost ~]# /usr/local/tdoa/mysql/bin/mysql -V /usr/local/tdoa/mysql/bin/mysql Ver 14.14 Distrib 5.6.37, for Linux (x86_64) using EditLine wrapper
请保证一些路径的设置和以前的my.cnf一致,如果设置错误,很可能导致启动不了数据库
[ERROR] Could not use /usr/local/data5/slowlog/slow.log for logging
我这里是由于慢日志的位置和老的mysql5.6路径不一致,创建/data/slowlog即可,这里要仔细看报错,然后根据报错来发现和解决问题。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/47173.html
摘要:背景服务器上有,要求升级为方法为了降低影响范围,可持续作业,决定在现有基础上部署,即部署多版本注意事项与现有安装目录不能相同与现有数据库文件目录不能相同与现有的启动端口不能相同默认与现有的服务的不能相同,即里面的的设置不能一样与现有的服务的 1.背景 服务器上有mysql5.5.38,要求升级为mysql5.6 2.方法 为了降低影响范围,可持续作业,决定在现有基础上部署mysql5....
摘要:下的数据库升级最麻烦的不过权限的问题本文的的安装方式为下磁盘镜像的安装方式的方式大同小异从升级到安装目录信息安装新版本这个过程会删除下的除目录以外的文件为了避免数据丢失最好先把备份到其他位置新包安装完 Mac OSX 下的数据库升级最麻烦的不过权限的问题. 本文的MySQL的安装方式为OSX下DMG磁盘镜像的安装方式, Mac Ports/Homebrew 的方式大同小异. 从 5....
摘要:准备说明公司服务器为,安装后的默认版本是,在执行命令时报错如下经过一番搜索终于找到可行的办法,即为升级版本,升级时间比较长,需要比较好的网络支持版本检测下使用检测的版本系统检测通过以上信息可知系统版本为位升级导入证书安 准备 说明 公司服务器为centos,安装git后的默认版本是1.7.1,在执行git clone命令时报错如下: fatal: HTTP request...
摘要:准备说明公司服务器为,安装后的默认版本是,在执行命令时报错如下经过一番搜索终于找到可行的办法,即为升级版本,升级时间比较长,需要比较好的网络支持版本检测下使用检测的版本系统检测通过以上信息可知系统版本为位升级导入证书安 准备 说明 公司服务器为centos,安装git后的默认版本是1.7.1,在执行git clone命令时报错如下: fatal: HTTP request...
摘要:准备说明公司服务器为,安装后的默认版本是,在执行命令时报错如下经过一番搜索终于找到可行的办法,即为升级版本,升级时间比较长,需要比较好的网络支持版本检测下使用检测的版本系统检测通过以上信息可知系统版本为位升级导入证书安 准备 说明 公司服务器为centos,安装git后的默认版本是1.7.1,在执行git clone命令时报错如下: fatal: HTTP request...
阅读 2900·2021-10-15 09:41
阅读 2957·2021-09-22 16:05
阅读 2176·2021-09-22 15:19
阅读 2692·2021-09-02 15:11
阅读 2327·2019-08-30 15:52
阅读 707·2019-08-30 11:06
阅读 868·2019-08-29 16:44
阅读 984·2019-08-23 18:18