mysql基于软件包升级

这篇具有很好参考价值的文章主要介绍了mysql基于软件包升级。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意:无论是什么升级都是有风险的,升级前都需要做一次全备份。

mysql简单备份和恢复-CSDN博客

本文章以5.7升级为8.0为案例演示。

0、准备

1、安装mysql5.7,5.7版本mysql安装演示mysql-linux归档版安装-CSDN博客

2、在官网下载8.0压缩包MySQL :: Download MySQL Community Server 

3、mysql8.0压缩包上传到服务器,并解压

xz -d /opt/mysql-8.0.35-linux-glibc2.28-x86_64.tar.xz

tar -xf /opt/mysql-8.0.35-linux-glibc2.28-x86_64.tar -C /opt/mysql/mysql8/

mv /opt/mysql/mysql8/mysql-8.0.35-linux-glibc2.28-x86_64 /opt/mysql/mysql8/mysql

 文章来源地址https://www.toymoban.com/news/detail-743666.html

 

1.就地升级

概述:关闭老版本mysql,使用老版本数据目录启动新版本数据库 。

1.关闭旧数据库

开启慢速关闭mysql,让一些缓存信息可以刷盘到磁盘中。 

SET GLOBAL innodb_fast_shutdown = 0;

 关闭mysql

/opt/mysql/mysql2/mysql/bin/mysqladmin -u root -P 3308 -S /tmp/mysql3.sock -p shutdown

2.启动新数据库 

 /opt/mysql/mysql8/mysql/bin/mysqld_safe --defaults-file=/etc/my3.cnf  --user=mysql3

 --defaults-file使用旧数据库配置文件

 --user使用旧数据库用户

 

3.客户端连接

/opt/mysql/mysql8/mysql/bin/mysql -u root -p -P 3308 -S /tmp/mysql3.sock 

查看mysql版本 ,8.0表示升级成功

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

 

2.逻辑升级

 概述:逻辑备份老版本数据库,关闭老版本数据库,启动新版本数据库,把老版本逻辑备份数据导入新版本数据库。

 

1.从以前的 MySQL 导出现有数据 : 

/opt/mysql/mysql5.7.36/mysql/bin/mysqldump -u root -p -P3307 -S /opt/mysql/mysql5.7.36/mysql.sock --add-drop-table --routines --events --all-databases --force > /opt/mysql/mysql5.7.36/data-for-upgrade.sql 

 --add-drop-table:SQL语句添加-如果存在表删除表

 --routines:转储包括函数和过程

--events:转储包括事件

--all-databases:转储所有数据库

--force:转储中出现错误继续执行

 

2.关闭旧mysql数据库

/opt/mysql/mysql5.7.36/mysql/bin/mysqladmin -u root -p -P 3307 -S /opt/mysql/mysql5.7.36/mysql.sock shutdown

 3.安装mysql8.0 参考mysql-linux归档版安装-CSDN博客

初始化数据目录

[client]
#password	= your_password
port		= 3308
socket		= /tmp/mysql8.sock

[mysqld]
port		= 3308
socket		= /tmp/mysql8.sock
datadir = /opt/mysql/mysql8/data
basedir = /opt/mysql/mysql8/mysql
default_storage_engine = InnoDB
performance_schema_max_table_instances = 400
table_definition_cache = 400
skip-external-locking
key_buffer_size = 32M
max_allowed_packet = 100G
table_open_cache = 128
sort_buffer_size = 768K
net_buffer_length = 4K
read_buffer_size = 768K
read_rnd_buffer_size = 256K
myisam_sort_buffer_size = 8M
thread_cache_size = 16
tmp_table_size = 32M
default_authentication_plugin = mysql_native_password
lower_case_table_names = 1
sql-mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

explicit_defaults_for_timestamp = true
#skip-name-resolve
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535

log-bin=mysql-bin
binlog_format=mixed
server-id = 3
slow_query_log=1
slow-query-log-file=/opt/mysql/mysql8/data/mysql-slow.log
long_query_time=3
#log_queries_not_using_indexes=on
early-plugin-load = ""

innodb_data_home_dir = /opt/mysql/mysql8/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /opt/mysql/mysql8/data
innodb_buffer_pool_size = 128M
innodb_log_file_size = 64M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
innodb_max_dirty_pages_pct = 90
innodb_read_io_threads = 2
innodb_write_io_threads = 2

secure-file-priv = /opt/mysql/mysql8
user=mysql8

mysqlx_socket = /tmp/mysqlx8.sock
mysqlx_port = 33080

[mysqldump]
user=root
password="553057712"
quick
max_allowed_packet = 500M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 32M
sort_buffer_size = 768K
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

 

/opt/mysql/mysql8/mysql/bin/mysqld --defaults-file=/etc/my8.cnf --initialize

复制临时密码第一次登陆时用到 

4.启动mysql8.0 

 /opt/mysql/mysql8/mysql/bin/mysqld_safe --defaults-file=/etc/my8.cnf --user=mysql8

5.重置密码

登陆 

 /opt/mysql/mysql8/mysql/bin/mysql -u root -p -P3308 -S /tmp/mysql8.sock

修改root密码

 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

6.将之前创建的转储文件加载到新的 MySQL服务器中

/opt/mysql/mysql8/mysql/bin/mysql -u root -p -P 3308 -S /tmp/mysql8.sock --force < /opt/mysql/mysql5.7.36/data-for-upgrade.sql

 执行系统表出现一些错误mysql基于软件包升级,数据库,mysql,数据库

 7.执行剩余的升级操作

关闭mysql 

 /opt/mysql/mysql8/mysql/bin/mysqladmin -u root -p -P 3308 -S /tmp/mysql8.sock shutdown

  使用 --upgrade=FORCE 选项重新启动它 执行其余升级任务

/opt/mysql/mysql8/mysql/bin/mysqld_safe --defaults-file=/etc/my8.cnf --upgrade=FORCE --user=mysql8 

 

到了这里,关于mysql基于软件包升级的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 源 “MySQL 5.7 Community Server“ 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。

    源 “MySQL 5.7 Community Server” 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。 失败的软件包是:mysql-community-server-5.7.44-1.el7.x86_64 GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 这个错误表明 YUM 存储库的 GPG 密钥验证失败。这可能是由于 GPG 密

    2024年01月25日
    浏览(66)
  • 解决源 “MySQL 8.0 Community Server“ 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。

    源 “MySQL 8.0 Community Server” 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。 失败的软件包是:mysql-community-server-8.0.31-1.el7.x86_64 GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

    2024年03月08日
    浏览(44)
  • 没有可用的软件包 python,但是它被其它的软件包引用了

    按照网上找的解决办法: 然而我还是会有这个问题:  后来我注意到错误提示里有“取代它... python-is-python3” 然后就试着将sudo apt install python 改为sudo apt install python-is-python3  就可以了  输入python命令可以看到:  

    2024年02月15日
    浏览(68)
  • RT-Thread 软件包-软件包分类-IoT-WebTerminal①

    1、Web Terminal 是什么 Web Terminal 是一款针对 RT-Thread RTOS 的库。启动后,可以通过网页访问设备的控制台(命令行)系统,实现设备的 远程/移动化 操控。 2、依赖信息 RT-Thread 组件 LWIP LWIP/app/tftp Finsh/MSH DFS RT-Thread 包 Mongoose 3、如何使用 3.1 初始化 在 mongoose 初始化完成后,执行 w

    2024年02月21日
    浏览(52)
  • RT-Thread 软件包-软件包分类-IoT-WebNet①

    中文页 | English WebNet 软件包是 RT-Thread 自主研发的,基于 HTTP 协议的 Web 服务器实现,它不仅提供设备与 HTTP Client 通讯的基本功能,而且支持多种模块功能扩展,且资源占用少、可裁剪性强,充分满足开发者对嵌入式设备服务器的功能需求。 WebNet 软件包功能特点如下: 支持

    2024年01月17日
    浏览(70)
  • RT-Thread 软件包-软件包分类-IoT-OTA Downloader①

    中文页 | 英文页 本软件包是用于 OTA 升级的固件下载器,该下载器提供多种固件下载方式。开发者可以根据自己的需求灵活选择升级方式,每种升级方式都只需调用一次函数或者命令就可实现,目前支持的下载方式如下所示: HTTP/HTTPS 协议下载固件 Ymodem 协议下载固件 1.1 许可

    2024年01月22日
    浏览(55)
  • RT-Thread 软件包-软件包分类-IoT-AT device①

    # AT device # 中文页 | 英文页 AT device 软件包是由 RT-Thread AT 组件针对不同 AT 设备的移植文件和示例代码组成,目前支持的 AT 设备有:ESP8266、ESP32、M26、MC20、RW007、MW31、SIM800C、W60X 、SIM76XX、A9/A9G、BC26 、AIR720、ME3616、M6315、BC28、EC200X、M5311、L610系列设备等,目前上述设备都完成

    2024年01月21日
    浏览(47)
  • 已解决:源 “MySQL 5.7 Community Server“ 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确 和 报错:`ERROR 1045 (28000

    服务器上安装mysql时出现了报错,简单记录下解决方案 执行: rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 启动mysql服务并查看运行状态 查看mysql初始密码: grep \\\'A temporary password\\\' /var/log/mysqld.log 使用初始密码进行登录,报错: ERROR 1045 (28000): Access denied for user \\\'root\\\'@\\\'localhost\\\' 修

    2024年02月13日
    浏览(88)
  • CentOS 软件包管理

          gzip和bzip2命令--用于压缩,用gzip压缩的文件的扩展名为.gz。bzip2压缩的文件扩展名为.bz2     linux系统中的压缩文件,扩展名通常为.tar.gz.tgz.gz.bz2                 tar命令--tar 【选项】 打包或压缩的文件名 -C【目标目录】                   -z 代表解压缩的是.gz结

    2023年04月21日
    浏览(85)
  • OpenWrt--软件包管理

    Openwrt有一套自己管理软件包的方法,可以用来管理数千个软件包与数十个硬件平台,我们也可以使用这套管理方法将我们的软件加入到Openwrt系统中。 下面的文件结构是dns软件包的结构,该软件包存放在 openwrt/package/network/services 目录下,这个软件包下存在两个文件夹跟一个

    2024年02月03日
    浏览(77)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包