zoukankan      html  css  js  c++  java
  • mongodb mysql es数据迁移

    mongodb数据迁移

    使用的工具:

    mongodump 备份

    mongorestore 恢复

    # 10.1.1.1是需要迁移数据的mongo主机
    # 10.1.1.2是一台全新的mongo主机
    
    # 在10.1.1.1上操作
    # 全库备份
    mongodump -h 10.1.1.1:27017 -uroot -proot --authenticationDatabase admin  -o /home/mongod/backup
    
    # 单库备份
    mongodump -h 10.1.1.1:27017 -uroot -proot --authenticationDatabase admin  -d test -o /home/mongod/backup/  # 备份test库
    
    # 备份某一个库下的集合
    mongodump -h 10.1.1.1:27017 -uroot -proot --authenticationDatabase admin  -d test -c vast -o /home/mongod/backup/ # 备份test库下的vast集合
    
    # 备份单表并压缩
    mongodump -h 10.1.1.1:27017 -uroot -proot --authenticationDatabase admin  -d test -c vast -o /home/mongod/backup/ --gzip
    
    # 在10.1.1.2上操作
    # 从全库的备份中恢复某个单库
    mongorestore -h 10.1.1.2:27017 -uroot -proot --authenticationDatabase admin -d test --drop  /home/mongod/backup/test/
    
    # 恢复test库
    mongorestore -h 10.1.1.2:27017 -uroot -proot --authenticationDatabase admin -d test /home/mongod/backup/test/
    
    # 恢复test库下的vast集合
    mongorestore -h 10.1.1.2:27017 -uroot -proot --authenticationDatabase admin -d test -c vast /home/mongod/backup/test/vast.bson
    
    mysql数据迁移

    mysql备份

    # 10.1.1.1是需要迁移数据的mysql主机
    # 10.1.1.2是一台全新的mysql主机
    
    # 在10.1.1.1上操作
    # 备份整个mysql上的所有数据
    mysqldump -uadmin -h 10.1.1.1 -uadmin -p --all-databases > backupfile.sql
    # 备份单个数据库的数据
    mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql 
    # 备份多个数据库的数据
    mysqldump -hhostname -uusername -ppassword –-databases databasename1 databasename2 databasename3 > multibackupfile.sql
    

    mysql恢复

    # 在10.1.1.2上操作
    mysql -u root -p
    source backupfile.sql
    # or
    mysql -hhostname -uusername -ppassword databasename < backupfile.sql
    
    es数据迁移
    Elasticsearch-dump导出数据
    # 将192.168.150.30的dev43_sdx_dev导出为json格式的数据
    docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump   --input=http://192.168.150.30:9200/dev43_sdx_dev   --output=/tmp/my_index_mapping.json --type=data
    
    Elasticsearch-dump导入数据
    # 将new_index_mapping.json内的数据导入至192.168.150.31的dev43_sdx_dev_bulk
    docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump --input=/tmp/new_index_mapping.json --output=http://192.168.150.31:9200/dev43_sdx_dev_bulk --type=data
    
    注意:

    docker 执行 elasticdump 导入导出文件的文件共享问题
    在 docker 中执行 elasticdump 进行数据导入导出时,需要考虑宿主机之间文件共享的问题,在 run elasticdump 用 -v 指定共享文件的位置

    原文地址: https://www.cnblogs.com/sonyy/p/13156239.html

    微醺生活,醉美人生
  • 相关阅读:
    Prommetheus 插件监控 ES
    Linux LVM条带化
    MYSQL wait_timeout以及connect_timeout.这两个有什么区别
    alertmanager配置文件说明(转载)
    腾讯云MongoDB: skip查询内核优化(转载)
    MongoDB主从复制介绍和常见问题说明(转载)
    MongoDB 批量更新、批量新增、批量删除、批量替换 —— bulkWrite操作
    MongoDB Cluster 数据平衡优化
    MongoDB副本集提高读写速率
    Postgresql中时间戳与日期的相互转换(同样适用于GreenPlum)
  • 原文地址:https://www.cnblogs.com/sonyy/p/13156239.html
Copyright © 2011-2022 走看看