LNMP环境中的数据库迁移为独立的服务器
环境: 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语句的方式导出
物理备份:
- scp /application/mysql 拷贝到独立数据库上就可以
- 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环境中的数据库迁移为独立的服务器的更多相关文章
- 20.翻译系列:Code-First中的数据库迁移技术【EF 6 Code-First系列】
原文链接:https://www.entityframeworktutorial.net/code-first/migration-in-code-first.aspx EF 6 Code-First ...
- LNMP环境中WordPress程序伪静态解决方案
LNMP环境是目前我们国内站长使用的Linux VPS配置环境中使用较多的.作为新手我们很可能会看到老左类似的"LNMP安装教程"然后依葫芦画瓢的去安装VPS.我们是否有发现环境中 ...
- 关于Django中ORM数据库迁移的配置
Django中ORM数据库迁移配置 1,若想将模型转为mysql数据库中的表,需要在settings中配置: DATABASES = { 'default': { 'ENGINE': 'django. ...
- 生产环境中,数据库升级维护的最佳解决方案flyway
官网:https://flywaydb.org/ 转载:http://casheen.iteye.com/blog/1749916 1. 引言 想到要管理数据库的版本,是在实际产品中遇到问题后想到的 ...
- django中的数据库迁移
Django是用python写的web开发框架,其特点是: 1.重量级框架,内部封装了很多的功能组件,使开发变的简便快速, 2.MVT模式:前后端分离,高内聚低耦合,m:model,与mvc中的m功能 ...
- laravel中的数据库迁移
1.创建数据库迁移文件:生成数据库迁移文件,前面跟着时间戳: php artisan make:migration create_posts_table 创建数据库迁移文件:可以重命名数据表名: -- ...
- ubuntu系统lamp环境搭建、数据库迁移、设置数据库外部访问
sudo passwd root设置两次密码su输入设置的密码exit (退出root帐号) 1.sudo apt-get update 2.sudo apt-get install apache2 ...
- Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中
一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以上命令之后如果端口没有被开放就会 ...
- 生产环境中mysql数据库由主从关系切换为主主关系
目录 一.清除原从数据库数据及主从关系 1.1.关闭主从数据库原有的主从关系 1.2.清除从数据库原有数据 二.将主库上的数据备份到从库 2.1.备份主库数据到从库 2.2.在从库使用tsc.sql文 ...
随机推荐
- C++构造函数以及何时被调用
using namespace std; class A { public: A() { cout << "默认无参构造函数" << endl; } #if ...
- 报错:(未解决)NoReplicaOnlineException: No replica in ISR for partition __consumer_offsets-8 is alive. Live brokers are: [Set(50, 51, 52)], ISR brokers are: [68]
报错背景: CDH集成kafka插件之后,启动kafka时就报出此错误. 报错现象: -- ::, ERROR state.change.logger: [Controller epoch=] Ini ...
- Python - Django - 母版和继承
可以把多个页面相同的部分提取出来,放在一个母板里,这些页面只需要继承这个母板就好了 通常会在母板中定义页面专用的 CSS 块和 JS 块,方便子页面替换 定义块: {% block 名字 %} {% ...
- 【Leetcode_easy】892. Surface Area of 3D Shapes
problem 892. Surface Area of 3D Shapes 题意:感觉不清楚立方体是如何堆积的,所以也不清楚立方体之间是如何combine的.. Essentially, compu ...
- CSS Position定位过多是否会影响浏览器渲染速度
一直有个传说就是页面里的Position多了会影响浏览器渲染速度,今天做个测试看看结果如何. 检验的方法: 动态创建一定数量的div > 开始计算时间 > 导入css文件渲染 > o ...
- centOS安装配置NFS
环境 nfs 192.168.56.101 client 192.168.56.102 一.yum 安装 yum -y install nfs-utils rpcbind 192.168.56.101 ...
- Mui manifest.json文档说明
Mui官方地址:https://ask.dcloud.net.cn/article/94 保存在这里,太难找了!!!!!! 以下是完整的manifest.json配置文件,在HBuilder|HBui ...
- mybatis执行流程
mybatis 简介 开源的持久层框架:代码简洁,写sql,性能还可以.容易掌握 执行图 文字说明 先创建核心配置文件(sqlMapConfig.xml) 再创建映射文件(可以有多个 ~ 通常有多少张 ...
- 《Mysql - 读写分离有哪些坑?》
一:读写分离 - 概念 - 读写分离的主要目标就是分摊主库的压力. - 基本架构 - - 二:两种读写分离的架构特点 - 客户端直连方案 - 因为少了一层 proxy 转发,所以查询性能稍 ...
- Spring Boot 入门(九):集成Quartz定时任务
本片文章续<Spring Boot 入门(八):集成RabbitMQ消息队列>,关于Quartz定时任务请参考<Quartz的基本使用之入门(2.3.0版本)> spring ...