美文网首页
LNMP环境下的数据库迁移

LNMP环境下的数据库迁移

作者: 早_wsm | 来源:发表于2019-06-22 14:05 被阅读0次

    1.先备份mysql内数据

    导出所有数据(生产环境中数据较多,不建议一次导出所有)

    • 1.导出并压缩
    [root@test01 ~]# mysqldump -uroot -p -A >gzip /tmp/all.sql.gz
    
    • 2.传输到新数据库主机上
    scp -P22 /tmp/all.sql.gz root@172.16.1.51:/root
    

    2.新数据库服务器准备工作

    • 1.解压接收到的sql文件
    [root@db01 ~]# gzip -d all.sql.gz 
    
    • 2.导入数据库并在数据库中检查是否导入
    [root@db01 ~]# mysql -uroot -p     <all.sql 
    MariaDB [(none)]> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    | wordpress          |
    +--------------------+
    5 rows in set (0.05 sec)
    MariaDB [(none)]> show tables from wordpress;
    +-----------------------+
    | Tables_in_wordpress   |
    +-----------------------+
    | wp_commentmeta        |
    | wp_comments           |
    | wp_links              |
    | wp_options            |
    | wp_postmeta           |
    | wp_posts              |
    | wp_term_relationships |
    | wp_term_taxonomy      |
    | wp_termmeta           |
    | wp_terms              |
    | wp_usermeta           |
    | wp_users              |
    +-----------------------+
    12 rows in set (0.01 sec)
    
    • 3.刷新权限
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    

    3.修改网站代码里的配置,指定访问至新数据库服务器

    生产中,要向开发人员要此文件,此示例使用开源wodpress软件所以指定修改此配置文件

    [root@test01 blog]# vim /application/nginx-1.14.2/html/blog/wp-config.php 
    [root@test01 blog]# grep "DB_HOST" wp-config.php 
    define('DB_HOST', '172.16.1.51');  #主机名修改为新服务器ip地址
    

    4.关闭被迁移的数据库

    数据库已完成迁移,但用户上传的图片等也要迁移至nfs服务器中

    5.图片等导入nfs

    • 1.找出 网站用户上传目录
      /app/blog/wp-content/uploads
    • 2.先把原来的上传目录内容移动出来
    [root@test01 blog]# mv /application/nginx-1.14.2/html/blog/wp-content/uploads/    /tmp/
    [root@test01 blog]# ll -d /tmp/uploads/
    drwxr-xr-x 3 www www 18 Feb 24 15:47 /tmp/uploads/
    
    • 3.nfs服务器配置
    root@nfs01 ~]# systemctl enable  nfs.service rpcbind
    Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
    [root@nfs01 ~]# systemctl restart  nfs.service rpcbind
    [root@nfs01 ~]# systemctl is-enabled nfs.service rpcbind
    enabled
    enabled
    [root@nfs01 ~]# systemctl is-active nfs.service rpcbind
    active
    active
    

    -4.修改nfs服务器nfs配置

    [root@nfs01 ~]# mkdir -p /nfsbackup 
    [root@nfs01 ~]# id www
    uid=888(www) gid=888(www) groups=888(www)
    [root@nfs01 ~]# chown -R  www.www  /nfsbackup/
    
    vim /etc/exports
    #share /nfsbackup to web server 
    /nfsbackup  172.16.1.0/24(rw,sync,all_squash,anonuid=888,anongid=888)
    
    [root@nfs01 ~]# systemctl reload  nfs 
    [root@nfs01 ~]# showmount -e 172.16.1.31 
    Export list for 172.16.1.31:
    /nfsbackup 172.16.1.0/24
    /app/w     172.16.1.0/24
    /app/r     172.16.1.0/24
    /data      172.16.1.0/24
    
    • 5.在被迁移服务器上挂载
    mkdir -p /app/blog/wp-content/uploads
    mount -t nfs  172.16.1.31:/nfsbackup /application/nginx-1.14.2/html/blog/wp-content/uploads/ 
    [root@web01 blog]# df -h
    Filesystem              Size  Used Avail Use% Mounted on
    /dev/sda3                48G  2.3G   46G   5% /
    devtmpfs                988M     0  988M   0% /dev
    tmpfs                   998M     0  998M   0% /dev/shm
    tmpfs                   998M  9.2M  989M   1% /run
    tmpfs                   998M     0  998M   0% /sys/fs/cgroup
    /dev/sda1              1014M  124M  891M  13% /boot
    tmpfs                   200M     0  200M   0% /run/user/0
    172.16.1.31:/nfsbackup   48G  3.0G   45G   7% /application/nginx-1.14.2/html/blog/wp-content/uploads/ 
    
    • 6.在原来移出的数据移动回来
      mv /tmp/uploads/* /application/nginx-1.14.2/html/blog/wp-content/uploads/

    相关文章

      网友评论

          本文标题:LNMP环境下的数据库迁移

          本文链接:https://www.haomeiwen.com/subject/ptymqctx.html