zoukankan      html  css  js  c++  java
  • ECS 利用快照创建磁盘实现无损扩容数据盘

    1.先登录服务器暂停服务,nginx+php+mysql+搜索服务
    2.修改mysql的参数

    #vi /etc/my.cnf
    【mysqld】
    datadir=/alidata/mysqldata
    server_id=2
    binlog_format = "ROW"

    3. 首先基于当前数据盘创建一个快照,备份数据,同时可以利用这个快照直接创建独立云磁盘节约数据来回拷贝的时间
    4. 打开独立云磁盘的购买页面(https://ecs-buy.aliyun.com/#/clouddisk),选择和ECS相同可用区的地域,购买一个独立云磁盘,购买时直接选择用快照创建磁盘,使用第一步中的快照。

    5、打开ECS控制台磁盘页面,找到刚才购买的独立云磁盘,在更多选项中将独立云磁盘挂载到ECS上。

    6、登录到服务器上,使用 mount 命令将这块独立云磁盘挂载到系统中,查看一下其中的文件是否和数据盘中的一致。

    #mkdir /bak
    #mount /dev/vdc1 /bak

    7、把原来的磁盘进行扩容

    8、确定独立云磁盘中的数据无误后,先使用 fdisk 删除原有的分区表,然后再使用 fdisk、mkfs.ext3 等重新对数据盘执行分区、格式化操作,使数据盘的可用空间变为扩容之后的大小。

    #fdisk /dev/vdb        m    d    w
    #fdisl -l              查看是否有删除掉分区
    #umount /dev/vdb1    
    如果出现umount: /alidata: device is busy,运行fuser -m -v /dev/vdb1,结束进程
    #df -h            查看是否盘卸载掉
    #fdisk -l
    #fdisk /dev/vdb        重新挂载盘
    #mkfs.ext3 /dev/vdb1
    #mount /dev/vdb1
    #echo /dev/vdb1 /alidata/ ext3 >> /etc/fstab

    9、之后通过cp -R命令将独立云磁盘中的数据全部拷回数据盘,可以加上--preserve=all参数,复制时保留文件的属性。

    #cp -R /bak/* /alidata/ --preserve=all

    10、查看是否复制完整

    #df -h

    11、启动服务,恢复正常

    启动mysql如果出现Starting MySQL..The server quit without updating PID file ([FAILED]/server/mysql/data/xxxx.pid).
    修改my.cnf中
    添加datadir=/alidata/mysqldata

    12、在ECS中umount独立云磁盘

    #umount /dev/vdc1

    13、在ECS的磁盘控制台中卸载这块独立云磁盘,卸载后再选择释放(先卸载,然后再释放),操作完成。

  • 相关阅读:
    Redis Redis-Cell
    Redis Bloom Filter
    Redis HyperLogLog
    TCC、XA 、DTP区别
    MySQL索引最左匹配原则
    什么原因导致统计信息失效--SQL
    光标移动大法---落落大神
    mongo 导入导出
    oracle 10053 事件
    卸载12C
  • 原文地址:https://www.cnblogs.com/guantou1992/p/9729757.html
Copyright © 2011-2022 走看看