LNMP环境中的数据库迁移为独立的服务器
2024-08-27 02:13:55
环境: 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!
最新文章
- iOS 下拉刷新-上拉加载原理
- AnjularJS系列1 —— 样式相关的指令
- Linux之服务器时间同步
- ACM: SGU 101 Domino- 欧拉回路-并查集
- nslookup基础用法
- 【Todo】【读书笔记】机器学习实战(Python版)
- EXCEL排序
- C#中,为什么结构体也可以设置构造函数?
- systemverilog interface
- 临界段CCriticalSection的使用
- SQL随着子查询结果更新多个字段
- asp.net读取CSV
- 自己实现一个nullptr
- C# Math.Round实现中国式四舍五入
- CF1100B Build a Contest
- 读QT5.7源码(三)Q_OBJECT 和QMetaObject
- Hadoop HBase概念学习系列之HBase里的Zookeeper(二十一)
- No.17 selenium学习之路之判断与等待
- SecureCRT连接AWS EC2云主机密码登录
- 51Nod 1419 最小公倍数挑战
热门文章
- Win10+Ubuntu18.04安装双系统
- k8s-基础环境配置(六)
- 戒邪淫利器:《楞严经 四种清净明诲》实例及原经文 (转自学佛网:http://www.xuefo.net/nr/article55/545256.html)
- jvm 虚拟机字节码指令表(转)
- idea中maven项目下载源码的方式的
- Java基础教程:枚举类型
- LeetCode 142. 环形链表 II(Linked List Cycle II)
- 02 HTML
- 修改Linux服务器中的MySql密码
- 以php中的自增自自减运算符操作(整型,浮点型,字符串型,布尔型,空类型)数据