`
pcpig
  • 浏览: 91274 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mysql不同版本数据之间的同步工具+常用指令

阅读更多
升级数据库时,通常需要将旧版本中的数据同步到新版本的mysql服务中。对于MyISAM格式的,通常直接copy数据文件,然后修改文件权限(chown -R mysql:mysql data)就能解决问题。但是对于innodb格式的,这种方式是行不通的。于是我写了一个工具方便数据的备份。

操作步骤如下:

1、启动新的mysql服务
   #:bin/mysqld_safe --port=3308 --socket=/tmp/mysql2.sock &

2、同步mysql服务权限【可选】
   
    
    //同步权限数据
    #:mysqldump --opt mysql | mysql -P 3308 --socket=/tmp/mysql2.sock mysql
    //在每一次的升级过程中,mysql_upgrade这个命令我们都应该去执行,它通过
    //mysqlcheck命令帮我们去检查表是否兼容新版本的数据库同时作出修复,
    //还有个很重要的作用就是使用mysql_fix_privilege_tables命令去升级权限表。
    #: mysql_upgrade  -P 3308 --socket=/tmp/mysql2.sock
    


2、同步应用数据
TO_MYSQL_SOCK=/tmp/mysql2.sock
TO_MYSQL_PORT=3308
dataList=`mysql -s -e "show databases"`
for databaseName in ${dataList[*]}
do
        # 过滤掉不需要同步的表
        case $databaseName in Database|mysql|test|performance_schema|information_schema)
                echo "ignore Database:"$databaseName ;;
                *) echo "创建数据库:"$databaseName
                mysqladmin -P ${TO_MYSQL_PORT}  --socket=${TO_MYSQL_SOCK} create ${databaseName}
                mysqldump --opt ${databaseName} | mysql -P ${TO_MYSQL_PORT} --socket=${TO_MYSQL_SOCK} ${databaseName}
                ;;
        esac
done


3、关掉旧数据库服务,启用新数据库服务

常用指令:
授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.%' IDENTIFIED BY '1' WITH GRANT OPTION;

编码集:
SHOW VARIABLES LIKE 'character_set_%';

二进制日志清除:
mysql > flush logs;
mysql > reset master;

删除没用的密码
delete from user where password ="";
FLUSH PRIVILEGES;

初设密码:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h server-171 password 'new-password'

5.6.10版本编译(默认字符utf8)
cmake -DCMAKE_INSTALL_PREFIX=/opt/app/mysql-5.6.10 \
-DMYSQL_DATADIR=/opt/app/mysql-5.6.10/data            \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all

慢查询语句(my.cnf)
long_query_time=1
log_slow_queries= /usr/local/mysql/var/slow_query.log

修改文件权限
chown -R mysql:mysql ${dbname}
分享到:
评论

相关推荐

    mysql历史数据同步到clickhouse 已测试

    MySQL到ClickHouse的历史数据同步是一项常见的任务,尤其是在大数据分析场景中。ClickHouse是一个高性能的列式数据库管理系统(Column-Oriented DBMS),适用于在线分析处理(OLAP)和实时数据分析。MySQL作为流行的...

    mysql管理工具

    - **数据库同步**:比较并同步不同数据库之间的差异,便于版本控制和团队协作。 2. **其他MySQL管理工具**: - **MySQL Workbench**:官方提供的全面开发、设计和管理工具,具有模型化、SQL开发和服务器管理等...

    新版 MySQL DBA 高级视频 基于MySQL 5.7 MySQL 8.0版本.rar

    │ 5_MySQL其他常用命令讲解.mp4 │ 6_MySQL操作符和常用函数.mp4 │ 7_MySQL常用字符串和日期函数.mp4 │ delete.txt │ MySQL高级DBA大作业1.docx │ 作业.docx │ ├─新版MySQL DBA综合实战班 第04天 │ 1_课后...

    MYSQL 主备复制工具

    MySQL主备复制是一种常用的数据冗余和高可用性解决方案,它允许数据在多个服务器之间实时同步,确保在主服务器故障时能快速切换到备用服务器,从而维持服务的连续性和数据完整性。这一技术主要应用于大型数据库系统...

    mysql binlog日志恢复【亲测有效,有例子实测】

    1. **主从复制(MySQL Replication)**:在主服务器(master)上启用binlog,然后将binlog文件传输到从服务器(slave),使得从服务器能够同步主服务器上的所有数据更改,从而保持数据一致性。server_id配置用于区分...

    mysql操作常用问题解决

    - 监控工具:利用`SHOW STATUS`、`SHOW VARIABLES`等命令检查数据库状态,或使用第三方工具如MySQL Workbench、Percona Toolkit等进行性能监控。 10. **安全性**: - 安全实践:设置强密码策略,定期更新MySQL...

    mysql8.1.0版本的安装包

    2. InnoDB存储引擎增强:InnoDB是MySQL最常用的事务处理引擎,新版本中对InnoDB进行了大量优化,包括支持更大的表空间、更快的行锁定以及更高效的索引操作。 3. 新的安全功能:MySQL 8.1.0增强了安全性和认证机制,...

    MySQL 5.1参考手册中文版

    6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器...

    MySql8.0版本参考手册.zip

    MySQL 8.0是当前广泛使用的开源关系型数据库管理系统(RDBMS)的最新稳定版本。这个版本带来了许多新特性和改进,旨在提高性能、安全性和易用性。本参考手册包含了MySQL 8.0的详细信息,包括安装、配置、优化、查询...

    mysql45讲.zip

    2. **安装与配置**:包括在不同操作系统上(如Windows、Linux、MacOS)的安装步骤,以及如何配置MySQL服务器和客户端工具。 3. **数据库和表的概念**:解释数据库和表的基本概念,以及如何创建、删除和修改数据库及...

    mysql 5.5版 mysql.h.rar

    最后,MySQL 5.5版本还增强了诊断和监控工具,如`SHOW ENGINE INNODB STATUS`命令可以查看InnoDB存储引擎的状态,帮助开发者和管理员排查问题。 综上所述,`mysql.h` 文件在MySQL 5.5版中扮演着核心角色,它为...

    2017最新老男孩MySQL高级专业DBA实战课程全套【清晰不加密】,看完教程月入40万没毛病

    06-常见运维同步工具介绍.avi 07-drbd的部署及ip配置规划.avi 08-drbd软件的安装配置准备.avi 09-创建同步的分区实践drbd.avi 10-drbd环境分区说明及分区命令.avi 11-实际安装drbd软件实战.avi 12-drbd相关配置列表...

    MySQL 5.1中文手冊

    6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器复制中的...

    django整合mysql实现对外提供接口

    **Django常用命令** Django提供了丰富的命令行工具,如: 1. `django-admin startproject [project_name]`:创建一个新的Django项目。 2. `python manage.py runserver`:启动开发服务器,用于本地测试。 3. `...

    mysql-client(SQLyog Ultimate v8.32)

    4. 数据同步与迁移:SQLyog具有数据同步工具,可以比较并同步两个数据库之间的差异,确保数据一致性。同时,它还支持数据库的备份和恢复,以防止数据丢失。 5. 用户管理:在SQLyog中,可以轻松创建、修改和删除...

    mysql-5.5.35-linux2.6-x86_64.tar

    `tar`命令是Linux下用于处理归档文件的工具,`-zxvf`是其常用的参数组合,分别代表了不同的功能: - `z`:表示解压gzip格式的压缩文件。 - `x`:表示解压操作。 - `v`:表示详细模式,显示解压过程中的详细信息。 - ...

    MySQL OCP超详细学习笔记

    在MySQL数据备份与迁移中,`mysqldump`是一个常用的工具。其`--master-data`参数可以指定备份时包含二进制日志的位置,对从库配置很有帮助。当设置为1时,mysqldump导出的SQL文件会包含`CHANGE MASTER TO`命令,指向...

    MySQL 5.1参考手册

    6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器复制中的...

    线上问题调查常用命令

    本篇文章将基于提供的文件信息,深入解析线上问题调查中常用的Linux性能检测工具及JVM性能相关命令,并提供详细的解释与应用场景。 #### Linux性能检测工具 **1. CPU性能检测** ##### 基本概念 - **上下文切换**...

Global site tag (gtag.js) - Google Analytics