בדף הזה מוסבר איך ליצור עותק לקריאה בלבד של מכונה ב-Cloud SQL.
כדי להגדיר מכונה של Cloud SQL שתפעל כמפרסם למנוי חיצוני, קראו את המאמר הגדרת רפליקות חיצוניות.
רפליקה לקריאה היא עותק של המכונה הראשית שמשקף את השינויים במכונה הראשית כמעט בזמן אמת, בנסיבות רגילות. אתם יכולים להשתמש בעותק לקריאה בלבד כדי להפחית את העומס על המכונה הראשית שנוצר מבקשות קריאה או מתנועת ניתוח נתונים.
בנוסף, כדי להתאושש מאסון, אתם יכולים לבצע העברה אזורית. אם הרפליקה היא רפליקה חוצת-אזורים, אפשר לבצע יתירות כשל לאזור אחר. באופן ספציפי, אפשר לקדם רפליקה למכונה עצמאית (במקרה כזה, רפליקות קיימות לא יחשיבו את המכונה הזו כראשית).
למידע נוסף על אופן הפעולה של הרפליקציה, ראו רפליקציה ב-Cloud SQL.
לפני שמתחילים
אם אתם יוצרים את הרפליקה הראשונה של המכונה הזו, ודאו שהמכונה עומדת בדרישות למכונות ראשיות. מידע נוסף
יצירת עותק לקריאה בלבד
כשיוצרים עותק לקריאה בלבד, חשוב לזכור את השיקולים הבאים:
- אפשר להקצות עד 7 רפליקות לקריאה בלבד לכל מכונה ראשית.
כשמשתמשים במאגרי קריאה או בהתאמה אוטומטית של קנה המידה של מאגרי קריאה, חלות התנהגויות ייחודיות.
מידע נוסף זמין במאמר מידע על מאגרי קריאה.
- אם לא מציינים מהדורה, ברירת המחדל היא Cloud SQL מהדורת Enterprise.
- אם יוצרים עותק לקריאה בלבד או עותק מדורג, והמכונה הראשית היא מסוג Cloud SQL Enterprise Plus, צריך לציין את המהדורה והרמה שבהן רוצים להשתמש.
כך יוצרים עותק לקריאה בלבד:
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- מוצאים את המכונה שרוצים ליצור לה רפליקה ופותחים את התפריט
more actionsלצד הרשומה. - בוחרים באפשרות Create read replica.
אם האפשרות הזו לא מופיעה, המכונה היא רפליקה. אי אפשר ליצור רפליקה של רפליקה.
בקטע Customize your instance, מעדכנים את ההגדרות של הרפליקה. כדי להתחיל, לוחצים על הצגת אפשרויות ההגדרה כדי להציג את קבוצות ההגדרות. אחר כך מרחיבים את הקבוצות הרצויות כדי לבדוק ולהתאים אישית את ההגדרות. בצד שמאל מופיע סיכום של כל האפשרויות שבחרתם. ההתאמה האישית של ההגדרות האלה היא אופציונלית. אם לא מבצעים התאמות אישיות, המערכת מקצה את ערכי ברירת המחדל.
מידע נוסף על כל הגדרה זמין בדף מידע על הגדרות המכונה.
- לוחצים על Create replica.
אם צריך, Cloud SQL יוצר גיבוי ואז יוצר את הרפליקה. המערכת תחזיר אתכם לדף המכונה של המכונה הראשית.
gcloud
יוצרים את הרפליקה:
gcloud sql instances create REPLICA_NAME \ --master-instance-name=PRIMARY_INSTANCE_NAME
אם צריך, אפשר לציין גודל שכבה אחר באמצעות הפרמטר --tier.
אפשר לציין אזור אחר באמצעות הפרמטר --region.
אם למכונה הראשית יש רק כתובת IP פנימית, מוסיפים לפקודה את הפרמטר --no-assign-ip.
אפשר להוסיף עוד פרמטרים להגדרות אחרות של המכונה. מידע נוסף זמין במאמר gcloud sql instances create.
צריך ליצור את הרפליקה באותה רשת VPC שבה נמצא המכונה הראשית. אפשר גם לציין allocated-ip-range-name ברשת ה-VPC הזו. אם לא מציינים טווח, הרפליקה נוצרת בטווח אקראי.
Terraform
כדי ליצור רפליקה לקריאה בלבד, משתמשים במשאב של Terraform.
REST v1beta4
משתמשים ב-method insert של המשאב instances כדי ליצור את הרפליקה לקריאה בלבד. המאפיינים region ו-databaseVersion חייבים להיות זהים לאלה של המאסטר.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- database-version: מחרוזת גרסה של טיפוסים בני מנייה (enum) (לדוגמה, SQLSERVER_2017_ENTERPRISE)
- primary-instance-name: השם של המכונה הראשית
- primary-instance-region: האזור של המכונה הראשית
- replica-region: האזור של המכונה המשוכפלת
- replica-name: השם של מכונת הרפליקה
- machine-type: מחרוזת של טיפוסים בני מנייה (enum) של סוג המכונה. לדוגמה: "db-custom-1-3840"
אתם יכולים להשתמש בשדה sqlNetworkArchitecture כדי לאכוף את השימוש בארכיטקטורת הרשת החדשה במכונה בזמן היצירה, גם אם הפרויקט לא שודרג באופן מלא.
פרטים נוספים על ארכיטקטורת הרשת החדשה וההשלכות שלה מופיעים במאמרים
שדרוג מכונה לארכיטקטורת הרשת החדשה והקצאת טווח של כתובות IP.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances
תוכן בקשת JSON:
{
"masterInstanceName": "primary-instance-name",
"project": "project-id",
"databaseVersion": "database-version",
"name": "replica-name",
"region": "replica-region",
"settings":
{
"tier": "machine-type",
"settingsVersion": 0,
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
יצירת עותק לקריאה בלבד של מכונה שמופעל בה Private Service Connect
כדי ליצור רפליקה לקריאה בלבד של מכונה שמופעל בה Private Service Connect, צריך להשתמש ב-ה-CLI של gcloud או ב-API. אתם יכולים ליצור את הרפליקה הזו באותו אזור או באזור שונה מהמכונה הראשית (רפליקה לקריאה בלבד בכמה אזורים).
הרפליקה לקריאה בלבד לא יכולה לשכפל ממכונה עם סוג קישוריות שונה. לדוגמה, מכונה שמופעל בה Private Service Connect יכולה לשכפל רק ממכונה אחרת של Private Service Connect. בנוסף, אי אפשר לשכפל ממכונה שתומכת בחיבורים של כתובות IP חיצוניות או ממכונה שמוגדרת עם גישה לשירותים פרטיים.
gcloud
כדי ליצור עותק לקריאה בלבד של מכונה, משתמשים בפקודה gcloud sql instances create:
gcloud sql instances create REPLICA_INSTANCE_NAME \ --master-instance-name=PRIMARY_INSTANCE_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --enable-private-service-connect \ --allowed-psc-projects=ALLOWED_PROJECTS \ --availability-type=AVAILABILITY_TYPE \ --no-assign-ip
מחליפים את הפרטים הבאים:
- REPLICA_INSTANCE_NAME: השם של מכונת הרפליקה.
- PRIMARY_INSTANCE_NAME: השם של המכונה הראשית.
- PROJECT_ID: המזהה או מספר הפרויקט ב- Google Cloud שמכיל את המכונה.
- REGION_NAME: שם האזור של מכונת הרפליקה.
ALLOWED_PROJECTS: רשימה של מזהי פרויקטים או מספרי פרויקטים מותרים, מופרדים בפסיקים. אם פרויקט לא מופיע ברשימה הזו, אי אפשר להשתמש בו כדי ליצור מכונה ולהפעיל בה את Private Service Connect.
Cloud SQL לא מעתיק לרפליקה את הפרויקטים המורשים של המכונה הראשית. לכל רפליקה צריך ליצור נקודת קצה (endpoint) מסוג Private Service Connect. אם אתם משתמשים ב-Cloud SQL Auth Proxy או ב-Cloud SQL Language Connectors, צרו תחום DNS ורשומת DNS לרפליקות.
- AVAILABILITY_TYPE: הפעלת זמינות גבוהה למכונה. בפרמטר הזה, מציינים את אחד מהערכים הבאים:
-
REGIONAL: הפעלת זמינות גבוהה, מומלץ למכונות בסביבת הייצור. המכונה עוברת למצב של מעבר לגיבוי בעת כשל באזור אחר בתוך האזור שבחרתם. -
ZONAL: לא מספק יכולת יתירות כשל. זה ערך ברירת המחדל.
מידע נוסף על הגדרה והסרה של זמינות גבוהה למכונות זמין במאמרים הגדרת מכונה קיימת לזמינות גבוהה והשבתת זמינות גבוהה למכונה.
-
REST v1
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PRIMARY_INSTANCE_NAME: השם של המכונה הראשית.
- PROJECT_ID: המזהה או מספר הפרויקט ב- Google Cloud שמכיל את המכונה.
- REPLICA_INSTANCE_NAME: השם של מכונת הרפליקה.
- REGION_NAME: שם האזור של מכונת הרפליקה.
- MACHINE_TYPE: סוג המכונה.
- AVAILABILITY_TYPE: הפעלת זמינות גבוהה למכונה. בפרמטר הזה, מציינים את אחד מהערכים הבאים:
-
REGIONAL: הפעלת זמינות גבוהה, מומלץ למכונות בסביבת הייצור. המכונה עוברת למצב של מעבר לגיבוי בעת כשל באזור אחר בתוך האזור שבחרתם. -
ZONAL: לא מספק יכולת יתירות כשל. זה ערך ברירת המחדל.
מידע נוסף על הגדרה והסרה של זמינות גבוהה למכונות זמין במאמרים הגדרת מכונה קיימת לזמינות גבוהה והשבתת זמינות גבוהה למכונה.
-
ALLOWED_PROJECTS: רשימה של מזהי פרויקטים או מספרי פרויקטים מותרים, מופרדים בפסיקים. אם פרויקט לא מופיע ברשימה הזו, אי אפשר להשתמש בו כדי ליצור מכונה ולהפעיל בה את Private Service Connect.
Cloud SQL לא מעתיק לרפליקה את הפרויקטים המורשים של המכונה הראשית. לכל רפליקה צריך ליצור נקודת קצה (endpoint) מסוג Private Service Connect. אם אתם משתמשים ב-Cloud SQL Auth Proxy או ב-Cloud SQL Language Connectors, אתם צריכים ליצור תחום DNS ורשומת DNS לרפליקות.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
תוכן בקשת JSON:
{
"masterInstanceName": "PRIMARY_INSTANCE_NAME",
"project": "PROJECT_ID",
"databaseVersion": "SQLSERVER_2019_STANDARD",
"name": "REPLICA_INSTANCE_NAME",
"region": "REGION_NAME",
"kind": "sql#instance",
"settings":
{
"tier": "MACHINE_TYPE",
"availabilityType": "AVAILABILITY_TYPE",
"settingsVersion": 0,
"ipConfiguration": {
"ipv4Enabled": false,
"pscConfig": {
"allowedConsumerProjects": [ALLOWED_PROJECTS],
"pscEnabled": true
}
},
"kind": "sql#settings",
"pricingPlan": "PER_USE",
"replicationType": "ASYNCHRONOUS",
"tier": "MACHINE_TYPE"
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_INSTANCE_NAME",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-16T02:32:12.281Z",
"operationType": "CREATE_REPLICA",
"name": "OPERATION_ID",
"targetId": "REPLICA_INSTANCE_NAME",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PRIMARY_INSTANCE_NAME: השם של המכונה הראשית.
- PROJECT_ID: המזהה או מספר הפרויקט ב- Google Cloud שמכיל את המכונה.
- REPLICA_INSTANCE_NAME: השם של מכונת הרפליקה.
- REGION_NAME: שם האזור של מכונת הרפליקה.
- MACHINE_TYPE: סוג המכונה.
- AVAILABILITY_TYPE: הפעלת זמינות גבוהה למכונה. בפרמטר הזה, מציינים את אחד מהערכים הבאים:
-
REGIONAL: הפעלת זמינות גבוהה, מומלץ למכונות בסביבת הייצור. המכונה עוברת למצב של מעבר לגיבוי בעת כשל באזור אחר בתוך האזור שבחרתם. -
ZONAL: לא מספק יכולת יתירות כשל. זה ערך ברירת המחדל.
מידע נוסף על הגדרה והסרה של זמינות גבוהה למכונות זמין במאמרים הגדרת מכונה קיימת לזמינות גבוהה והשבתת זמינות גבוהה למכונה.
-
ALLOWED_PROJECTS: רשימה של מזהי פרויקטים או מספרי פרויקטים מותרים, מופרדים בפסיקים. אם פרויקט לא מופיע ברשימה הזו, אי אפשר להשתמש בו כדי ליצור מכונה ולהפעיל בה את Private Service Connect.
Cloud SQL לא מעתיק לרפליקה את הפרויקטים המורשים של המכונה הראשית. לכל רפליקה צריך ליצור נקודת קצה (endpoint) מסוג Private Service Connect. אם אתם משתמשים ב-Cloud SQL Auth Proxy או ב-Cloud SQL Language Connectors, אתם צריכים ליצור תחום DNS ורשומת DNS לרפליקות.
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
תוכן בקשת JSON:
{
"masterInstanceName": "PRIMARY_INSTANCE_NAME",
"project": "PROJECT_ID",
"databaseVersion": "SQLSERVER_2019_STANDARD",
"name": "REPLICA_INSTANCE_NAME",
"region": "REGION_NAME",
"kind": "sql#instance",
"settings":
{
"tier": "MACHINE_TYPE",
"availabilityType": "AVAILABILITY_TYPE",
"settingsVersion": 0,
"ipConfiguration": {
"ipv4Enabled": false,
"pscConfig": {
"allowedConsumerProjects": [ALLOWED_PROJECTS],
"pscEnabled": true
}
},
"kind": "sql#settings",
"pricingPlan": "PER_USE",
"replicationType": "ASYNCHRONOUS",
"tier": "MACHINE_TYPE"
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_INSTANCE_NAME",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-16T02:32:12.281Z",
"operationType": "CREATE_REPLICA",
"name": "OPERATION_ID",
"targetId": "REPLICA_INSTANCE_NAME",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
יצירת רפליקות מדורגות
בקטע הזה מוסבר איך ליצור ולנהל רפליקות מדורגות.
במאמר רפליקות מדורגות מוסבר איך הן פועלות.
לפני שמתחילים
למכונה הראשית חייבת להיות רפליקה שניתן להעביר בשרשור. בקטע הבא מוסבר איך ליצור רפליקה מדורגת.
שלבים ליצירת רפליקה מדורגת
כשיוצרים רפליקה מדורגת, צריך ליצור אותה באזור שונה מהמכונה הראשית.
כדי להגדיר רפליקה מדורגת, צריך להגדיר את הדגל cascadable-replica.
gcloud
יוצרים את הרפליקה החדשה על ידי ציון המכונה הראשית באמצעות הדגל --master-instance-name והדגל --cascadable-replica:
gcloud sql instances create REPLICA_NAME \ --master-instance-name=PRIMARY_INSTANCE_NAME \ --cascadable-replica \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
- REPLICA_NAME: המזהה הייחודי של הרפליקה שאתם יוצרים.
- PRIMARY_INSTANCE_NAME: השם של המכונה הראשית.
- REGION: האזור שבו רוצים ליצור את הרפליקה החדשה. האזור הזה חייב להיות שונה מהאזור של המכונה הראשית.
צריך ליצור את הרפליקה באותה רשת VPC שבה נמצא המכונה הראשית. אפשר גם לציין שם של טווח כתובות IP שהוקצה ברשת ה-VPC הזו. אם לא מציינים טווח, הרפליקה נוצרת בטווח אקראי.
אפשר להוסיף עוד פרמטרים להגדרות אחרות של המכונה. לדוגמה,
- אפשר לציין גודל אחר של רמת מכונה באמצעות הפרמטר
--tier. - אם למכונה הראשית יש רק כתובת IP פרטית, צריך להוסיף לפקודה את הפרמטר
--no-assign-ip.
מידע נוסף על הוספת פרמטרים להגדרות של מכונות זמין במאמר gcloud sql instances create.
אחרי שיוצרים את הרפליקה שניתן להעביר, אפשר ליצור רפליקה מדורגת.
curl
- כדי ליצור רפליקה מדורגת במכונה הראשית, עורכים את דוגמת הקוד הבאה ב-JSON ושומרים אותה בקובץ בשם
request.json.לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הערכים בשדות הבאים:
- PROJECT_ID: מזהה הפרויקט.
- DATABASE_VERSION: מחרוזת של טיפוסים בני מנייה (enum) של גרסת מסד הנתונים. לדוגמה,
SQLSERVER_2017_ENTERPRISE.. - PRIMARY_INSTANCE_NAME: השם של המכונה הראשית.
- PRIMARY_INSTANCE_REGION: האזור של המכונה הראשית.
- REPLICA_REGION: האזור של מכונת הרפליקה.
- REPLICA_NAME: השם של מכונת הרפליקה.
- MACHINE_TYPE: מחרוזת enum של סוג המכונה. לדוגמה,
db-custom-2-3840.
{ "masterInstanceName": "PRIMARY_INSTANCE_NAME", "project": "PROJECT_ID", "databaseVersion": "DATABASE_VERSION" "name": "REPLICA_NAME", "region": "REPLICA_REGION", "settings": { "tier": "MACHINE_TYPE", "settingsVersion": 0, } "replicaConfiguration": { "cascadableReplica": true } }
- בקטע
replicaConfiguration, מוודאים שהשדהcascadadableReplicaמוגדר לערךtrue. - מריצים את הפקודה הבאה:
curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" -d @request.json "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances"
אחרי שיוצרים את הרפליקה שניתן להעביר, אפשר ליצור רפליקה מדורגת.
Terraform
כדי ליצור רפליקה מדורגת, משתמשים במשאב של Terraform.
בדוגמה הבאה נוצר מכונה ראשית ורפליקה מדורגת שאפשר להקצות כרפליקה ל-DR כשמבצעים פעולת מעבר כחלק מתוכנית התאוששות מאסון (DR) מתקדמת.
שלבים ליצירת רפליקה מדורגת
כשיוצרים רפליקה מדורגת, צריך ליצור אותה באותו אזור שבו נמצאת הרפליקה שניתנת להעברה מדורגת. כדי להגדיר רפליקה מדורגת, צריך לציין את השם של הרפליקה שניתנת להעברה בשרשרת בפרמטר–master-instance-name.
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- בכרטיסייה Replicas, לוחצים על הרפליקה שתשמש כהורה לרפליקה שרוצים ליצור.
- לוחצים על Create replica.
- בדף Create read replica, מעדכנים את מזהה המכונה ואת כל אפשרויות ההגדרה האחרות, כולל השם, האזור והתחום.
- לוחצים על יצירה.
מערכת Cloud SQL יוצרת רפליקה. המערכת תחזיר אתכם לדף המכונה של הרפליקה הראשית.
- חוזרים על שלבים 4 עד 6 לכל רפליקה מדורגת חדשה שרוצים ליצור.
gcloud
- יוצרים את הרפליקה החדשה על ידי ציון המכונה של הרפליקה שניתנת להעברה בשרשרת בדגל
--master-instance-name: - REPLICA_NAME: המזהה הייחודי של הרפליקה שיוצרים
- CASCADABLE_REPLICA_NAME: השם של הרפליקה שניתנת להעברה לשלב הבא
- אחרי שיוצרים את הרפליקה המשורשרת, אפשר לראות שהשינויים שבוצעו במכונה הראשית משוכפלים בכל הרפליקות בשרשרת הרפליקות המשורשרות.
gcloud sql instances create REPLICA_NAME \ --master-instance-name=CASCADABLE_REPLICA_NAME \
curl
- כדי ליצור רפליקה מדורגת מתחת לרפליקה שניתנת להעברה, עורכים את דוגמת הקוד הבאה ב-JSON ושומרים אותה בקובץ בשם
request.json:{ "masterInstanceName": "CASCADABLE_REPLICA_NAME", "project": "PROJECT_ID", "name": "REPLICA_NAME", "region": "REPLICA_REGION", "settings": { "tier": "MACHINE_TYPE", } }
- מריצים את הפקודה הבאה:
curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" -d @request.json "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances"
פתרון בעיות
| שגיאה | פתרון בעיות |
|---|---|
| הרפליקה לקריאה בלבד לא התחילה לשכפל בזמן היצירה. | סביר להניח שיש שגיאה ספציפית יותר בקובצי היומן. בודקים את היומנים ב-Cloud Logging כדי למצוא את השגיאה בפועל. |
| לא ניתן ליצור עותק לקריאה בלבד – שגיאת invalidFlagValue. | אחד מהדגלים בבקשה לא תקין. יכול להיות שזה דגל שציינתם במפורש או דגל שהוגדר לערך ברירת מחדל.
קודם כל, בודקים שהערך של הדגל אם הדגל |
| לא ניתן ליצור עותק לקריאה בלבד – שגיאה לא ידועה. | סביר להניח שיש שגיאה ספציפית יותר בקובצי היומן.
בודקים את היומנים ב-Cloud Logging כדי למצוא את השגיאה בפועל.
אם השגיאה היא |
| הדיסק מלא. | גודל הדיסק של המכונה הראשית יכול להתמלא במהלך יצירת הרפליקה. עורכים את המכונה הראשית כדי לשדרג אותה לגודל דיסק גדול יותר. |
| מופע הרפליקה משתמש ביותר מדי זיכרון. | הרפליקה משתמשת בזיכרון זמני כדי לשמור במטמון פעולות קריאה שמתבקשות לעיתים קרובות, מה שעלול לגרום לה להשתמש ביותר זיכרון מאשר המכונה הראשית.
מפעילים מחדש את מכונת הרפליקה כדי לפנות את שטח הזיכרון הזמני. |
| השכפול הופסק. | הגעתם למגבלת האחסון המקסימלית, וההגדלה האוטומטית של נפח האחסון לא מופעלת.
עורכים את המכונה כדי להפעיל את |
| השהיית השכפול גבוהה באופן עקבי. | עומס הכתיבה גבוה מדי והרפליקה לא יכולה לטפל בו. השהיית שכפול מתרחשת כשה-SQL thread ברפליקה לא מצליח לעמוד בקצב של ה-IO thread. סוגים מסוימים של שאילתות או עומסי עבודה יכולים לגרום לעיכוב זמני או קבוע ברפליקציה של סכימה מסוימת. חלק מהסיבות הנפוצות לעיכוב ברפליקציה הן:
פתרונות אפשריים:
|
| יצירת הרפליקה נכשלת בגלל זמן קצוב לתפוגה. | טרנזקציות ארוכות שלא בוצעו במכונה הראשית יכולות לגרום לכך שהיצירה של רפליקה לקריאה בלבד תיכשל.
יוצרים מחדש את הרפליקה אחרי שעוצרים את כל השאילתות שפועלות. |