`
pcpig
  • 浏览: 91886 次
  • 性别: 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. 多服务器复制中的...

    mysql官方中文参考手册

    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. 多服务器复制中的...

Global site tag (gtag.js) - Google Analytics