【DBA手记】详解克隆复制一个VMware虚拟机后有哪些坑?还要做哪些修改操作?(且linux下安装了MySQL)

【DBA手记】详解克隆复制一个VMware虚拟机后有哪些坑?还要做哪些修改操作?(且linux下安装了MySQL)
author: superSong
Email: dba.supersong@163.com

背景:

今天要克隆一台linux虚拟机,复现一个问题,做测试用,每当这时,我就会找出来之前总结的一些虚拟机的注意事项和修改方法,现在我把这些经验再整理一下记录到这里。
我一般都安装配置好一台虚拟机,各种软件及环境都安装配置好,保存成副本,当需要时,就不用再次安装linux,安装mysql了,直接加载上就成一台新虚拟机了,只要稍作修改就可以了。
当我们克隆复制一台虚拟机后,会有一些配置与原来的有冲突,在后期使用中,会遇到各种样的问题,要做的一些修改整理如下

  • 环境
    以CentOS 7.6 为例
    vmware版本为 VMware Workstation 15 Pro(12 Pro)
    Mysql 5.7
  • 简述
    本例是把原来报存的虚拟机副本node1 修改成node6
    有2处uuid,要区分,一处是linux的,一处是mysql的
    记得在早期的版本下,还会有少许差异

一 . VMware修改:

  • 在加载虚拟机副本时,
    步骤:在vmware主页面 文件–> 打开–>选择虚拟机副本文件 如"CentOS7.6.vmx"
    这里会弹出一个窗口,要选“我要复制虚拟机”,不要选“我要移动虚拟机”

  • 生成新的mac地址 不然会有mac地址冲突
    步骤:关闭虚拟机,在vmware主页面–>虚拟机–>设置–> 网络适配器–>高级 --> mac地址 点“生成”

二 . CentOS(Linux)修改:

修改网卡配置

vim /etc/sysconfig/network-scripts/ifcfg-ens33

  • 修改Linux的uuid
    [root@node1 ~]## uuidgen ens33 #先用 命令uuidgen ens33生成新的uuid(ens33是网卡名)
    bf1a7252-73ba-46e5-aa08-a0a92a99c75b

  • 修改为静态IP模式
    BOOTPROTO=static # 一般都是选择使用静态IP

  • 修改ip地址

  • 示例如下:

[root@node1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static  # 修改为静态IP
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=bf1a7252-73ba-46e5-aa08-a0a92a99c75b # 修改uuid 
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.136.26 # 修改ip地址
NETMASK=255.255.255.0
GATEWAY=192.168.136.2
DNS1=192.168.136.2
DNS2=8.8.8.8
  • 修改/etc/hostname
    vim /etc/hostname #原来是node1,改为node6

  • 修改主机名
    [root@node1 ~]# hostnamectl set-hostname node6
    然后重启 建议关闭后,再启动 (不要reboot)
    [root@node1 ~]# shutdown -h now

三. MySQL修改:

  • 如果还安装了MySQL,那么还需要修改mysql的server-auto.cnf
    单机下还好,这个问题一般会发生在mysql做主从复制时,报错为主和从库的uuid相同了,如下:
    Last_IO_Error:…because master and slave have equal MySQL server UUIDs;
  • 自动生成mysql新的server-uuid
[root@node1 ~]# /etc/init.d/mysql.server stop  # 关闭mysql 
[root@node1 ~]# cat /data/mysql/data/auto.cnf # 看下原来的server-uuid
[auto]
server-uuid=7d3b41ab-6c09-11ee-a91f-005056342ae7
[root@node1 ~]# mv /data/mysql/data/auto.cnf /data/mysql/data/auto.cnf.old  # 进入数据目录 移走原来的并备份,相当于删除了原来的
[root@node1 ~]# /etc/init.d/mysql.server start # 启动mysql
Starting MySQL.. SUCCESS! 
[root@node1 ~]# cat /data/mysql/data/auto.cnf # 看,已自动生成新的server-uuid
[auto]
server-uuid=c9fdabd3-0e9d-11ef-87c8-0050562520ec

附录: 修改后的配置信息

[root@node6 ~]# cat /etc/hostname 
node6
[root@node6 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=bf1a7252-73ba-46e5-aa08-a0a92a99c75b
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.136.26
NETMASK=255.255.255.0
GATEWAY=192.168.136.2
DNS1=192.168.136.2
DNS2=8.8.8.8

[root@node6 ~]# cat /data/mysql/data/auto.cnf
[auto]
server-uuid=c9fdabd3-0e9d-11ef-87c8-0050562520ec
[root@node6 ~]# 
[root@node6 ~]# cat /data/mysql/data/auto.cnf.old 
[auto]
server-uuid=7d3b41ab-6c09-11ee-a91f-005056342ae7
[root@node6 ~]# 
[root@node6 ~]# ps aux |grep mysql
root       8901  0.0  0.0 112724   988 pts/0    R+   16:59   0:00 grep --color=auto mysql
[root@node6 ~]# 
[root@node6 ~]# /etc/init.d/mysql.server start
Starting MySQL.Logging to '/data/mysql/data/node6.err'.
. SUCCESS! 
[root@node6 ~]# 
[root@node6 ~]# ps aux |grep mysql
root       8918  0.2  0.0 113312  1652 pts/0    S    17:00   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql/data --pid-file=/data/mysql/data/node6.pid
mysql      9177 15.6  6.1 1122108 178680 pts/0  Sl   17:00   0:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=node6.err --pid-file=/data/mysql/data/node6.pid --port=3306
root       9209  0.0  0.0 112724   988 pts/0    R+   17:00   0:00 grep --color=auto mysql
[root@node6 ~]# 
[root@node6 ~]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.136.26  netmask 255.255.255.0  broadcast 192.168.136.255
        inet6 fe80::250:56ff:fe25:20ec  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:25:20:ec  txqueuelen 1000  (Ethernet)
        RX packets 351  bytes 31633 (30.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 300  bytes 31414 (30.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  • 18
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值