← กลับไปที่รายการ

Internal To load: WordPresmuration Full Chain Resords, สํารองข้อมูลข้อมูล, ซ่อมแซมฐานข้อมูล เป็นต้น

itadol5j

I. พื้นหลังและความท้าทายหลัก

1. ฉากการย้ายที่

สภาพแวดล้อมการพัฒนาท้องถิ่นlocalhost:8081ผู้ประสานงานอื่น 666.comนี่เกี่ยวข้องกับการใช้งานการบรรจุบรรจุอุปกรณ์ (โดกเกอร์) และการย้ายฐานข้อมูลแบบข้ามสายพันธุ์

2. ปัญหาหลัก

  • การข้ามหน้าแรกการ เยี่ยม: 666.com กระโดดอัตโนมัติไปยัง localhost:8081เพราะฐานข้อมูลมีชื่อโดเมนเก่า
  • ความเสี่ยงความสอดคล้องกันของข้อมูล▪ ข้อมูลตู้คอนโทรลไม่ถูกสํารองข้อมูล และโพรเซสการอพยพอาจสูญเสียค่าปรับแต่งหรือข้อมูลส่วนเสริม

การ วิเคราะห์ ต้น เหตุ ของ ปัญหา

  1. ชื่อโดเมนของฐานข้อมูล
    • wp_options ตาราง siteurl ถึง home สนามยังไม่ปรับปรุง
    • บทความ, ข้อมูลกํากับ และลําดับข้อมูล (เช่น เมนู, เครื่องมือขนาดเล็ก) มีที่อยู่เก่าที่เข้ารหัสไว้ยาก
  2. การจัดการข้อมูลดอกเกอร์หายไป
    • ล้มเหลวในการรับข้อมูลระดับเสียงหรือ mysqldump การสํารองข้อมูลที่สมบูรณ์ ภาชนะบรรจุการจัดการโดยตรงส่งผลให้สูญเสียข้อมูลที่ย้อนกลับไม่ได้
  3. การเชื่อมต่อค่าปรับแต่งของเซิร์ฟเวอร์
    • กฎ ควบคุม สิ่ง แวด ล้อม เก่า (เช่น .htaccessยังไม่เคลียร์

3 วิธีแก้ปัญหาแบบเต็มกําลัง

ระยะที่ 1: Doker ข้อมูลสํารองข้อมูลและการย้าย

1. สํารองข้อมูลฐานข้อมูล MySQL วิธีการ 1: การรับบุตรบุญธรรม mysqldump ส่งออกเป็นแฟ้ม SQL
# 导出数据库(容器内操作)  
docker exec dockerwordpress-db-1 mysqldump -uroot -p123456 --hex-blob --default-character-set=utf8mb4 wordpress > /tmp/backup.sql  

# 复制到宿主机  
docker cp dockerwordpress-db-1:/tmp/backup.sql /host/backup.sql  
วิธีการ 2: สํารองข้อมูล MySQL ระดับเสียง
# 备份数据卷(宿主机操作)  
docker run --rm -v mysql_data:/source -v /host/backup:/backup alpine tar czf /backup/mysql_data.tar.gz -C /source .  
2. นําเข้าฐานข้อมูล MySQL ไปยังสภาพแวดล้อมการผลิต
# 导入 SQL 文件(生产环境容器)  
docker cp /host/backup.sql prod-mysql-container:/tmp/backup.sql  
docker exec -i prod-mysql-container mysql -uroot -p123456 wordpress < /tmp/backup.sql  

# 或从数据卷恢复  
docker run --rm -v prod_mysql_data:/target -v /host/backup:/backup alpine tar xzf /backup/mysql_data.tar.gz -C /target  
3. การตรวจสอบความถูกต้องของข้อมูล
# 检查关键表数据  
docker exec prod-mysql-container mysql -uroot -p123456 -e "USE wordpress; SELECT COUNT(*) FROM wp_posts;"  

เฟสที่สอง: การซ่อมแซมชื่อโดเมนกระโดด

1. รักษาความปลอดภัย เครื่องมือการเลือกและดําเนินการ
  • ส่วนเสริมการค้นหาตําแหน่งดีกว่า.
    1. การแทนที่ไลบรารีเต็มรูปแบบ localhost:8081 ใช่ 666.comฉันไม่รู้
    2. ปรับขนาดหน้าสูงสุดไปยัง 500การประมวลผลของตารางขนาดใหญ่
  • เครื่องมือสําหรับค้นหาในบรรทัดคําสั่ง DB.php srdb.cli.php -h localhost -u root -p 123456 -n wordpress -s "localhost:8081" -r "666.com" -g  
2. บังคับใช้การปรับปรุงคํา
// 在 wp-config.php 中定义绝对域名  
define('WP_HOME', 'https://666.com');  
define('WP_SITEURL', 'https://666.com');  
3. ล้างส่วนเกินของค่าปรับแต่งเซิร์ฟเวอร์
  • ลบกฏการวางแนวเดิม.# .htaccess 中删除旧规则
    RewriteRule ^(.*)$ https://localhost:8081/$1 [R=301,L] # 删除此行

เฟสที่ 3 : การจัดลําดับและการปรับปรุง

  1. การตรวจสอบสิทธิ์ของฟังก์ชัน
    • เข้าถึงหน้าหลัก:curl -I https://666.com ตรวจสอบรหัสสถานะ 200 ไม่ 301/302ฉันไม่รู้
    • ตรวจสอบอย่างสุ่มว่า ข่าว, หน้า, ที่อยู่ URL ของสื่อ ชี้ไปที่ชื่อโดเมนใหม่หรือไม่
  2. การปรับค่าความชื่นชอบ
    • ปรับแต่งการค้นหาฐานข้อมูลแคชของ Redis หรือ mempced
    • ใช้ docker system prune ล้างภาพจากกล่องที่ใช้ไม่ได้

ความ เสี่ยง ใน การ ดําเนิน งาน และ การ หลีก เลี่ยง

ภาพเสี่ยงประสิทธิภาพการ วัด ความ รู้สึก
ขัดแย้งกับสิทธิ์ในการใช้ฐานข้อมูลการจัดการการเริ่มงานล้มเหลว, การให้คําใบ้ของปูมบันทึกถูกปฏิเสธเรียกข้อมูลกลุ่มผู้ใช้ก่อนการสํารองข้อมูล 999:999(ค่าปริยาย)
เพิ่มความเสียหายของข้อมูลการจัดวางหน้ากระดาษสับสน หรือฟังก์ชันของปลั๊กอินผิดปกติใช้ -g พารามิเตอร์ต่าง ๆ ที่จะประมวลผลข้อมูลแบบต่อเนื่อง
แฟ้มสํารองข้อมูลยังไม่สมบูรณ์โครงสร้างนาฬิกานําเข้าหายไปสํารองข้อมูลคู่ (SQL + ระดับเสียงข้อมูล) เพื่อเรียกคืนข้อมูล MD5 Hash

บทเรียนวี และกระบวนการมาตรฐาน

1. กระบวนการอพยพมาตรฐาน

  1. สํารองข้อมูลสภาพแวดล้อมภายใน.# 备份数据库 + 数据卷  
    docker exec mysql-container mysqldump -uroot -p123456 wordpress > backup.sql  
    docker volume inspect mysql_data > volume_backup.json  
  2. การกําหนดสภาพแวดล้อมการผลิตล่วงหน้า.
    • สร้างตู้ MySQL รุ่นเดียวกันล่วงหน้า เพิ่มปริมาณข้อมูล
  3. ปรับเทียบข้อมูลภายนอก.
    • ใช้ rsync ปรับเทียบข้อมูล wp-content/uploads .

2. ตัวอย่างสคริปต์อัตโนมัติ

#!/bin/bash  
# 备份脚本  
docker exec mysql-container mysqldump -uroot -p123456 wordpress > /backups/wordpress_$(date +%Y%m%d).sql  
tar -czf /backups/mysql_data_$(date +%Y%m%d).tar.gz /var/lib/docker/volumes/mysql_data  

# 恢复脚本  
docker cp /backups/wordpress_20231001.sql prod-mysql-container:/tmp/  
docker exec -i prod-mysql-container mysql -uroot -p123456 wordpress < /tmp/wordpress_20231001.sql  

กลไกการติดตามระยะไกล

  • ติดตามการทํางาน.docker logs -f prod-mysql-container | grep -E "ERROR|WARNING"  
  • การ ตรวจ สุขภาพ.curl -s https://666.com/health-check | grep "OK"  

วี. ค่าสุดท้าย

ผ่านการฝึกอพยพครั้งนี้ "วิธีการประกอบคํา prests 4 ขั้นตอน"..

  1. สํารองข้อมูลมาตรฐานSQL + ข้อมูล ประกันภัยคู่
  2. ปรับปรุงเครื่องมือ: ข้อมูลที่แทนที่ความปลอดภัย รวมกับส่วนเสริมและเครื่องมือบรรทัดคําสั่ง
  3. การตรวจสอบสิทธิ์ของอะตอมChecked Check หน้า, API, ข้อมูลสื่อ.
  4. การติดตามอัตโนมัติล็อก,เช็คสุขภาพ,ตรวจการถอนเงินปกติ

ตัวเลือกนี้จะทําให้มีแม่แบบทั่วไปสําหรับการขนส่งโปรแกรมการจัดเก็บและลดข้อจํากัดทางเทคนิคที่เป็นผลมาจากความแตกต่างทางสิ่งแวดล้อม