环境: centos 6.5 ip:192.168.0.118  nginx、php、mysql

centos 6.5 ip:192.168.0.117 mysql

现在我们需要把数据库迁移到192.168.0.117机器上:

首先我们需要在118机器上备份数据库:

mysqldump 最常用的备份工具:

逻辑备份:小于50G的数据量,4-6个小时ok

原理:将数据库的数据以逻辑的sql语句的方式导出

物理备份:

  1. scp  /application/mysql  拷贝到独立数据库上就可以
  2. xtrabackup 开源的物理备份工具

下面我们以常用的逻辑来备份:

  • -A 备份所有库
  • -B 备份多个库,并添加use 库名:create database 库等的功能
  • -X 锁表,备份会影响读写,尽量晚上执行。
  • |gzip 压缩效率
  • .sql.gz 表示sql语句数据,.gz是压缩包。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| bqh |
| jyw |
| mysql |
| performance_schema |
| test |
| wordpress |
+--------------------+
7 rows in set (0.06 sec) mysql> quit
[root@bqh-118 mysql]# mysqldump -uroot -p123456 -A -B -X|gzip>/opt/bak_$(date +%F).sql.gz
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.
[root@bqh-118 mysql]# ll /opt/
总用量 348
-rw-r--r-- 1 root root 354461 6月 30 12:56 bak_2019-06-30.sql.gz
[root@bqh-118 mysql]# rm -rf /opt/bak_2019-06-30.sql.gz
[root@bqh-118 mysql]# mysqldump -uroot -p123456 -A -B -X --events|gzip>/opt/bak_$(date +%F).sql.gz #备份全库
[root@bqh-118 mysql]# ll /opt/
总用量 348
-rw-r--r-- 1 root root 354463 6月 30 13:00 bak_2019-06-30.sql.gz
[root@bqh-118 mysql]# mysqldump -uroot -p123456 -B -X wordpress|gzip>/opt/bak_wordpress.sql.gz #只备份指定的库
[root@bqh-118 mysql]# ll /opt/
总用量 544
-rw-r--r-- 1 root root 354463 6月 30 13:00 bak_2019-06-30.sql.gz
-rw-r--r-- 1 root root 199211 6月 30 13:01 bak_wordpress.sql.gz

注:Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.

解决方法:mysqldump备份时加参数 --events

将备份的库scp到117机器上去:

[root@bqh-118 mysql]# scp -rp -P22 /opt/bak_wordpress.sql.gz root@192.168.0.117:/opt/
root@192.168.0.117's password:
bak_wordpress.sql.gz 100% 195KB 194.5KB/s 00:00
[root@bqh-118 mysql]#

我们上117机器/opt/下查看是否推送过来了:

现在我们在117机器上恢复数据:

[root@bqh-117 opt]# ll
总用量 188
-rw-r--r-- 1 root root 185857 6月 30 23:38 bak_wordpress.sql.gz
drwxr-xr-x. 2 root root 4096 11月 22 2013 rh
[root@bqh-117 opt]# gunzip bak_wordpress.sql.gz
[root@bqh-117 opt]# ll
总用量 756
-rw-r--r-- 1 root root 766279 6月 30 23:38 bak_wordpress.sql
drwxr-xr-x. 2 root root 4096 11月 22 2013 rh
[root@bqh-117 opt]# less bak_wordpress.sql
[root@bqh-117 opt]# mysql -uroot -p123456 <bak_wordpress.sql

我们进入数据库查看是否导入了:

[root@bqh-117 opt]# mysql -uroot -p123456
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.5.32 MySQL Community Server (GPL) Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| wordpress |
+--------------------+
5 rows in set (0.00 sec) mysql> use wordpress;
Database changed
mysql> show tables;
+-----------------------+
| Tables_in_wordpress |
+-----------------------+
| bh_commentmeta |
| bh_comments |
| bh_links |
| bh_options |
| bh_postmeta |
| bh_posts |
| bh_term_relationships |
| bh_term_taxonomy |
| bh_terms |
| bh_usermeta |
| bh_users |
+-----------------------+
11 rows in set (0.00 sec) mysql>

我们现在打开web博客试试:

原因是我们没做授权和配置wp-config.php,现在我们要做117机器上给予授权:对于web来讲,数据授权:增删改查即可。

mysql> select user,host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1 |
| | bqh-117 |
| root | bqh-117 |
| | localhost |
| root | localhost |
+------+-----------+
6 rows in set (0.01 sec) mysql> grant select,insert,update,delete on wordpress.* to wordpress@'192.168.0.%' identified by '123456';
Query OK, 0 rows affected (0.02 sec) mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec) mysql> select user,host from mysql.user;
+-----------+-------------+
| user | host |
+-----------+-------------+
| root | 127.0.0.1 |
| wordpress | 192.168.0.% |
| root | ::1 |
| | bqh-117 |
| root | bqh-117 |
| | localhost |
| root | localhost |
+-----------+-------------+
7 rows in set (0.00 sec) mysql>

授权完后,我们需要修改wp-config.php配置文件:修改php连接文件

/** MySQL主机 */

define('DB_HOST', 'localhost');

localhost更改为”远端数据库ip或者域名”   #建议用域名

然后我们做hosts地址解析:

现在打开浏览器www.test.com

ok!

LNMP环境中的数据库迁移为独立的服务器的更多相关文章

  1. 20.翻译系列:Code-First中的数据库迁移技术【EF 6 Code-First系列】

    原文链接:https://www.entityframeworktutorial.net/code-first/migration-in-code-first.aspx EF 6 Code-First ...

  2. LNMP环境中WordPress程序伪静态解决方案

    LNMP环境是目前我们国内站长使用的Linux VPS配置环境中使用较多的.作为新手我们很可能会看到老左类似的"LNMP安装教程"然后依葫芦画瓢的去安装VPS.我们是否有发现环境中 ...

  3. 关于Django中ORM数据库迁移的配置

    Django中ORM数据库迁移配置 1,若想将模型转为mysql数据库中的表,需要在settings中配置: DATABASES = { 'default': { 'ENGINE': 'django. ...

  4. 生产环境中,数据库升级维护的最佳解决方案flyway

    官网:https://flywaydb.org/ 转载:http://casheen.iteye.com/blog/1749916 1.  引言 想到要管理数据库的版本,是在实际产品中遇到问题后想到的 ...

  5. django中的数据库迁移

    Django是用python写的web开发框架,其特点是: 1.重量级框架,内部封装了很多的功能组件,使开发变的简便快速, 2.MVT模式:前后端分离,高内聚低耦合,m:model,与mvc中的m功能 ...

  6. laravel中的数据库迁移

    1.创建数据库迁移文件:生成数据库迁移文件,前面跟着时间戳: php artisan make:migration create_posts_table 创建数据库迁移文件:可以重命名数据表名: -- ...

  7. ubuntu系统lamp环境搭建、数据库迁移、设置数据库外部访问

    sudo passwd root设置两次密码su输入设置的密码exit (退出root帐号) 1.sudo apt-get update 2.sudo apt-get install apache2 ...

  8. Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中

    一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以上命令之后如果端口没有被开放就会 ...

  9. 生产环境中mysql数据库由主从关系切换为主主关系

    目录 一.清除原从数据库数据及主从关系 1.1.关闭主从数据库原有的主从关系 1.2.清除从数据库原有数据 二.将主库上的数据备份到从库 2.1.备份主库数据到从库 2.2.在从库使用tsc.sql文 ...

随机推荐

  1. Spring cloud微服务安全实战-5-8实现基于session的SSO(认证服务器的session有效期)

    认证服务器 session的有效期. 也就是认证服务器上的session的有效期 生成环境下,认证服务器一定是一个集群.集群.那么session一定是要在所有的服务器之间进行共享的.最简单的方式是用S ...

  2. Vue学习笔记十:过滤器

    目录 公共过滤器的写法 简易过滤器+带参数过滤器+多过滤器 私有过滤器 公共过滤器的写法 过滤器的写法还是很简单的 ,如下 <p>{{ msg | filtermsg }}</p&g ...

  3. git 打tag(版本)、推送代码

    服务端:192.168.0.96 gitlab 客户端:192.168.0.97 git 服务端gitlab安装请参照: https://www.cnblogs.com/effortsing/p/10 ...

  4. Django: ORM查询中使用or查询

    先引入Q,(原名就叫Q) from django.db.models import Q page_user = User.objects.filter(Q(member_code__contains= ...

  5. Django:bootstrap table自定义查询实现

    参考:https://jalena.bcsytv.com/archives/tag/bootstrap 背景: bootstrap table在客户端分页方式下,自带有简易的搜索功能,但是功能太单一, ...

  6. 循环(数组循环、获取json数据循环)、each()循环详解

    return; // 退出循环(不满足,退出此次循环.下次满足条件,依然会走此循环)return false; //退出函数(退出所有) 一. 数组循环: html: <div class=&q ...

  7. 快速搭建ssh项目

    环境:oracle11g.myeclipse2014 首先在web项目中添加spring框架 现在已经添加完spring框架了 然后我们开始添加Hibernate框架 到这一步Hibernate框架就 ...

  8. hugepage设置

    1.设置memlock 编辑/etc/security/limits.conf 增加: * Soft memlock 稍小于RAM值 * hard memlock 稍小于RAM值 Memlock,锁定 ...

  9. 从零开始学Flask框架-006

    重定向和用户会话 因为刷新页面时浏览器会重新发送之前已经发送过的最后一个请求.如果这个请求是一个包含表单数据的POST 请求,刷新页面后会再次提交表单. 基于这个原因,最好别让Web 程序把POST ...

  10. 20191108-从零搭建基于Linux的RobotFramework框架

    第一步:安装Centos7 64位操作系统 直接安装即可,不详述 第二步:yum下载wget yum update yum install wget 第三步:安装Python3 建议安装3.7,我在 ...