- מידע על
- מה זה Cloud SQL?
- מה היתרונות של Cloud SQL?
- אילו גרסאות של מסדי נתונים זמינות ב-Cloud SQL? איך מנהלים את העדכונים?
- האם Cloud SQL תומך בכל התכונות של מסדי הנתונים?
- האם יש מגבלות על הגודל או על מספר השאילתות לשנייה?
- איך אפשר לקבל התראות על שינויים ב-Cloud SQL?
- איך מדווחים על באג, מבקשים תכונה או שואלים שאלה?
- איך מתחילים
- אחסון נתונים, שכפול ואימות
- איפה מאוחסנים הנתונים שלי?
- האם כדאי להשתמש בכונני SSD או בכוננים קשיחים (HDD) לאחסון?
- מה זה אזור?
- מהן מגבלות האחסון?
- איך הנתונים שלי משוכפלים?
- איך פועל מעבר לגיבוי בעת כשל ב-Cloud SQL?
- האם הנתונים שלי מוצפנים?
- איך מנוהלת ההצפנה של נתונים במנוחה?
- איך מנוהלת ההצפנה של נתונים במעבר?
- אילו סוגים של רפליקות לקריאה בלבד אפשר ליצור?
- איך אפשר לדעת אם מכונה היא רפליקה לקריאה בלבד?
- האם Cloud SQL מספק איזון עומסים לבקשות לרפליקות לקריאה בלבד?
- האם Cloud SQL ל-SQL Server משתלב עם שירות מנוהל ל-Microsoft Active Directory?
- גיבוי ושחזור
- ניהול המכונות
- אילו פעולות גורמות להפעלה מחדש של מכונות Cloud SQL?
- כמה זמן המכונות מושבתות במהלך ההפעלה מחדש?
- אפשר להגדיל או להקטין את מסד הנתונים?
- האם אפשר לשדרג ולשנמך מעבדי vCPU?
- האם צריך להשתמש במסוף Google Cloud כדי לנהל את Cloud SQL?
- איך אפשר לפנות את המקום של טבלה שהוסרה?
- איך אפשר לפנות את נפח האחסון שמשמש לקבצים זמניים?
- אפשר לייבא או לייצא מסד נתונים ספציפי?
- אפשר לייבא או לייצא קובץ CSV?
- האם צריך חשבון Cloud Storage כדי לייבא או לייצא נתונים ממכונה?
- מה המשמעות של
ERROR_RDBMSבפעולת ייבוא? - אם מוחקים את המכונה, אפשר להשתמש שוב בשם שלה?
- מהו משתמש מסד הנתונים cloudsqladmin?
- איך אפשר להשתמש ב-
GRANT ALL? - איך אפשר לגשת ליומני העסקאות של המכונות?
- מהי רמת הבידוד של טרנזקציות ב-Cloud SQL?
- איך אפשר להגן על המכונה מפני מחיקה בטעות?
- תובנות
- תמחור וחיוב
- איך אפשר לנסות את Cloud SQL?
- כמה מכונות אפשר ליצור בפרויקט?
- איזה גודל של מכונה של מסד נתונים נדרש? כמה זיכרון RAM?
- איך מחושב השימוש במכונה שלי?
- איך מחושב נפח האחסון?
- איך אפשר לראות כמה אשלם?
- מה קורה כשהמכונה מגיעה לגודל המותר?
- למה המכונה שלי מושעית?
- למה המכונה שלי נמחקה?
- איך מבטלים את החשבון ב-Cloud SQL?
- איך משביתים את החיוב?
- שימוש ב-Cloud SQL עם App Engine
- אפשר להתחבר מ-App Engine למכונה של MySQL?
- אפשר להתחבר מ-App Engine למכונה של PostgreSQL?
- אפשר להתחבר מ-App Engine למכונה של SQL Server?
- האם אפליקציית App Engine בארה"ב יכולה לגשת למכונה של Cloud SQL באיחוד האירופי (ולהפך)?
- איזה שירות מסד נתונים של Google Cloud מתאים לי?
- האם צריך להתקין שרת מסד נתונים מקומי כדי להשתמש בשרת הפיתוח של App Engine?
- באילו שפות אפשר להשתמש כדי לגשת למכונה?
- אפשר להשתמש ב-Django עם Cloud SQL?
- באילו פלייסהולדרים אפשר להשתמש במחרוזת השאילתה ב-Python?
- איך מנהלים את החיבורים?
- מה המשמעות של SQLException עם ההודעה "Invalid connection ID"?
- אפשר לגשת למכונה של Cloud SQL באופן פרוגרמטי מחוץ ל-App Engine?
מידע כללי
- מה זה Cloud SQL?
- Cloud SQL הוא שירות שמספק מסדי נתונים מנוהלים של SQL בענן. ב-Cloud SQL יש מסדי נתונים של PostgreSQL, SQL Server ו-MySQL.
- מה היתרונות של Cloud SQL?
- בעזרת Cloud SQL אתם יכולים להעביר ל-Google את המשימות השגרתיות, אבל ההכרחיות, שלעיתים קרובות גוזלות זמן רב – כמו החלת תיקונים ועדכונים, ניהול גיבויים והגדרת רפליקות – כדי שתוכלו להתמקד בפיתוח אפליקציות מעולות. מכיוון שאנחנו משתמשים בפרוטוקולים סטנדרטיים, אתם יכולים להתחבר כמעט מכל אפליקציה, בכל מקום.
- אילו גרסאות של מסדי נתונים זמינות ב-Cloud SQL? איך מנהלים את העדכונים?
-
Cloud SQL ל-MySQL תומך ב-MySQL בגרסאות 8.4 (ברירת המחדל), 8.0, 5.7 ו-5.6.
Cloud SQL ל-PostgreSQL תומך בגרסאות 9.6, 10, 11, 12, 13, 14, 15, 16, 17 ו-18 (ברירת המחדל) של PostgreSQL.
Cloud SQL ל-SQL Server תומך בגרסאות הבאות של SQL Server: SQL Server 2017 Standard, SQL Server 2017 Enterprise, SQL Server 2017 Express, SQL Server 2017 Web, SQL Server 2019 Standard, SQL Server 2019 Enterprise, SQL Server 2019 Express, SQL Server 2019 Web, SQL Server 2022 Standard (ברירת המחדל), SQL Server 2022 Enterprise, SQL Server 2022 Express ו-SQL Server 2022 Web.
עדכוני גרסאות משניים נפרסים כחלק מהתחזוקה המתוזמנת, בלי שאתם צריכים לעשות שום דבר. למידע נוסף על עדכונים, קראו את המאמר סקירה כללית על תחזוקה במכונות Cloud SQL.
כדי לראות את הגרסה הנוכחית של המכונה, נכנסים למסוףGoogle Cloud ולוחצים על שם המכונה כדי לפתוח את הדף Instance details. אפשר גם להשתמש בפקודה
gcloud sql instances describe. - האם Cloud SQL תומך בכל התכונות של מסדי נתונים?
- Cloud SQL תומך ברוב התכונות הנפוצות של MySQL, PostgreSQL ו-SQL Server. לרשימה של ההבדלים בין הפונקציונליות של מסד נתונים סטנדרטי לבין מה ש-Cloud SQL מספק, ראו, לדוגמה, ההבדלים בין Cloud SQL לבין הפונקציונליות הסטנדרטית של MySQL. אפשר גם לקרוא את המאמר ההבדלים בין Cloud SQL לבין הפונקציונליות הרגילה של PostgreSQL. בנוסף, כדאי לקרוא את המאמר תכונות של SQL Server שלא זמינות ב-Cloud SQL.
- האם יש מגבלות על הגודל או על מספר השאילתות לשנייה?
- אין מגבלות על מספר השאילתות לשנייה (QPS) במכונות של Cloud SQL. מידע על מגבלות שקשורות לחיבור, לגודל ול-App Engine מופיע במאמר מכסות ומגבלות.
- איך אפשר לקבל התראות על שינויים ב-Cloud SQL?
- אפשר להירשם לפיד ה-RSS של דף נתוני הגרסה של MySQL.
- איך מדווחים על באג, מבקשים תכונה או שואלים שאלה?
-
אתם יכולים לשאול שאלות בפורום הקהילה של Google Cloud Developer Program. למידע נוסף, אפשר לעיין בפורומים הבאים של Cloud SQL:
- דיונים בנושא Cloud SQL ל-MySQL
- דיונים בנושא Cloud SQL ל-PostgreSQL
- דיונים בנושא Cloud SQL ל-SQL Server
כדי לראות את הסטטוס הכללי של Google Cloud , אפשר להיכנס אל Google Cloud Status Tracker.
אם יש לכם באג ב-Cloud SQL שניתן לשחזור או שאתם רוצים לבקש תכונה חדשה, היכנסו לIssue Tracker.
תחילת העבודה
- מהו כלי ה-MySQL הכי טוב לניהול המכונה שלי?
- יש מגוון כלי MySQL שזמינים ל-Cloud SQL. כדי להריץ הצהרות בודדות, אפשר להשתמש ב כלי שורת הפקודה של MySQL. כדי לבצע משימות מורכבות יותר או להשתמש בסביבת פיתוח עשירה יותר של מסדי נתונים, אתם יכולים לנסות את Toad for MySQL או את MySQL Workbench. מידע נוסף זמין במאמר כלי ניהול ודיווח.
- באיזה מנוע אחסון אני משתמש?
- במכונות MySQL, מנוע האחסון היחיד שנתמך הוא InnoDB.
אם יש לכם קובץ
mysqldumpשבו כל הטבלאות בפורמט MyISAM, אתם יכולים להמיר אותן לפורמט InnoDB באמצעות העברת הקובץ דרך סקריפט sed:mysqldump --databases [DATABASE_NAME] \ -h [INSTANCE_IP] -u [USERNAME] -p [PASSWORD] \ --hex-blob --default-character-set=utf8mb4 | sed 's/ENGINE=MyISAM/ENGINE=InnoDB/g' > [DATABASE_FILE].sql
אזהרה: אל תעשו את זה אם קובץ
mysqldumpמכיל את הסכימהmysql. הקבצים האלה חייבים להישאר ב-MyISAM. - למה במכונה החדשה שלי, שאין בה נתונים, מוצג שימוש במקום בכונן?
- כשיוצרים מכונה, גם Cloud SQL וגם מסד הנתונים משתמשים בנפח אחסון מסוים בשביל קובצי מערכת ומטא-נתונים. חזרה למעלה
- איפה מאוחסנים הנתונים שלי?
-
נתוני המכונה מאוחסנים באזור שבו נמצאת המכונה. אם לא תציינו מיקום לאחסון, הגיבויים יאוחסנו במספר אזורים שקרובים מבחינה גיאוגרפית למיקום של המכונה שלכם ב-Cloud SQL. לדוגמה, אם המכונה של Cloud SQL נמצאת ב-
us-central1, הגיבויים מאוחסנים כברירת מחדל במספר אזורים ב-us. עם זאת, מיקום ברירת המחדל כמוaustralia-southeast1נמצא מחוץ למספר אזורים. האזור הקרוב ביותר הואasia. - מה זה אזור?
תחום (zone) הוא ישות עצמאית במיקום גיאוגרפי ספציפי שבו אפשר להשתמש במשאבים. לדוגמה, אזור בשם us-central1-a מציין מיקום במרכז ארצות הברית.
במכונות MySQL, כדי להשיג עמידות בפני תקלות בין אזורים, אפשר להגדיר את המכונה לזמינות גבוהה. מומלץ מאוד להשתמש בהגדרת הזמינות הגבוהה בכל המכונות בסביבת הייצור.
למידע נוסף על אזורים, קראו את המאמר משאבים של אזורים במרכז העזרה של Compute Engine.
- מהן מגבלות האחסון?
- למידע על מגבלות האחסון, ראו מכסות ומגבלות.
- איך הנתונים שלי משוכפלים?
-
מכונות MySQL: מכונות MySQL מספקות הגדרת זמינות גבוהה ורפליקות לקריאה בלבד של MySQL. רפליקות לקריאה בלבד ב-MySQL משתמשות ברפליקציה אסינכרונית.
מכונות PostgreSQL מספקות הגדרת זמינות גבוהה ועותקי קריאה.
מכונות של SQL Server מספקות הגדרת זמינות גבוהה ועותקי API לקריאה בלבד.
- אילו סוגים של עותקים לקריאה בלבד אפשר ליצור?
-
במאמר אפשרויות רפליקציה מוסבר בהרחבה על רפליקות לקריאה בלבד, כולל תרחישים לדוגמה לכל סוג.
- איך פועל מעבר לגיבוי בעת כשל ב-Cloud SQL?
-
למידע נוסף על יתירות כשל, ראו סקירה כללית על הגדרת זמינות גבוהה.
- האם הנתונים שלי מוצפנים?
- נתוני הלקוחות ב-Cloud SQL מוצפנים כשהם מאוחסנים בטבלאות של מסדי נתונים, בקבצים זמניים ובגיבויים. אפשר להצפין את החיבורים החיצוניים באמצעות SSL או באמצעות Cloud SQL Auth Proxy.
- איך מנוהלת ההצפנה של נתונים במנוחה?
הנתונים מוצפנים באמצעות תקן Advanced Encryption Standard של 256 ביט (AES-256), או תקן טוב יותר, עם מפתחות סימטריים: כלומר, אותו מפתח משמש להצפנת הנתונים כשהם מאוחסנים, ולפענוח שלהם כשהם בשימוש. מפתחות הנתונים האלה מוצפנים בעצמם באמצעות מפתח שמאוחסן במאגר מפתחות מאובטח, ומשתנים באופן קבוע.
פרטים נוספים זמינים במאמר הצפנה במנוחה ב-Google Cloud.
- איך מנוהלת ההצפנה של נתונים במעבר?
-
Google מצפינה ומאמתת את כל הנתונים במעבר בשכבת רשת אחת או יותר, כשהנתונים מועברים אל מחוץ לגבולות הפיזיים שאינם בשליטתה של Google או מטעמה של Google. הנתונים במעבר בגבולות הפיזיים האלה מאומתים בדרך כלל, אבל עשויים להיות לא מוצפנים כברירת מחדל. אם מתחברים למכונה באמצעות כתובת ה-IP הציבורית שלה, צריך להשתמש באישורי SSL/TLS כדי שהנתונים יהיו מאובטחים במהלך ההעברה. אתם יכולים לבחור אילו אמצעי אבטחה נוספים להחיל על סמך מודל האיומים שלכם. לדוגמה, אתם יכולים להגדיר SSL לחיבורים בתוך האזור ל-Cloud SQL.
למידע נוסף, קראו את המאמר הצפנה במעבר ב-Google Cloud.
- איך אפשר לדעת אם מכונה היא רפליקה לקריאה בלבד?
- אפשר להשתמש במסוף Google Cloud כדי לראות את כל המכונות של Cloud SQL, ולבדוק אם מכונה מסוימת היא מכונה ראשית או מכונה של עותק לקריאה בלבד. אפשר גם להשתמש ב-CLI של gcloud כדי לבדוק אם המכונה היא ראשית או רפליקה לקריאה בלבד. מידע נוסף זמין במאמר בדיקת סטטוס הרפליקציה.
- האם Cloud SQL מספק איזון עומסים לבקשות לקריאת רפליקות?
- ב-Cloud SQL אין אפשרות להגדיר אוטומטית איזון עומסים. אתם יכולים להשתמש במאגר חיבורים כדי להפיץ בקשות קריאה בין עותקים לקריאה בלבד, על ידי מעבר בין כמה נקודות קצה (endpoints) של חיבורים.
- האם Cloud SQL ל-SQL Server משתלב עם Managed Service for Microsoft Active Directory?
- כן. אפשר לבצע אימות, הרשאה ועוד. כנקודת התחלה, כדאי לעיין בסקירה הכללית.
- איך משחזרים מכונה?
-
כדי לשחזר מגיבוי, אפשר להשתמש במסוףGoogle Cloud או בכלי שורת הפקודה של
gcloud. לפרטים נוספים, קראו את המאמר שחזור מכונה.כדי לשחזר מכונה לנקודה מסוימת בזמן, משתמשים בשחזור מערכת מנקודה מסוימת בזמן (PITR). מידע נוסף זמין במאמר שימוש בשחזור מערכת מנקודה מסוימת בזמן (PITR).
- כמה עולים הגיבויים?
-
הגיבויים מחויבים לפי תעריף האחסון של המכונה.
למידע נוסף על תמחור האחסון של המכונה ועל תעריפי המכונה, ראו תמחור.
- האם אפשר לגשת לגיבויים אוטומטיים שנוצרו לפני יותר משבעה ימים?
-
גיבויים אוטומטיים מתבצעים כל יום, וכברירת מחדל נשמרים למשך שבעה ימים. אפשר להגדיר את ערך שמירת הגיבוי מגיבוי אחד ועד 365 גיבויים. בסיום תקופת השמירה, הגיבוי הישן ביותר נמחק. הגיבויים האוטומטיים הם מצטברים. הם מכילים רק נתונים שהשתנו אחרי הגיבוי הקודם. הגיבוי הישן ביותר הוא בגודל דומה למסד הנתונים. כשהגיבוי הישן ביותר נמחק, הגודל של הגיבוי הבא אחריו גדל כדי שעדיין יהיה גיבוי מלא.
חשוב לזכור שהגיבויים לפי דרישה לא נמחקים עד שמסירים אותם באופן ידני.
- איך שחזור מערכת מנקודה מסוימת בזמן (PITR) משפיע על הביצועים?
- ב-Cloud SQL ל-MySQL, כדי לבצע שחזור מערכת מנקודה מסוימת בזמן צריך להפעיל רישום ביומן בינארי. כלומר, כל עדכון במסד הנתונים נכתב ביומן נפרד, מה שגורם להפחתה קלה בביצועי הכתיבה. הביצועים של פעולות הקריאה לא מושפעים מהרישום ביומן הבינארי, בלי קשר לגודל של קובצי היומן הבינארי.
- מתי כדאי להשתמש ברפליקציה חיצונית ומתי ברפליקציה חוצת-אזורים כדי להגן מפני כשל באזור?
-
רפליקציה חיצונית רפליקציה בין אזורים בניהול עצמי של הלקוח רפליקה מנוהלת של Cloud SQL באזורים שונים אפשר לשכפל בין מכונות שאינן של Google Cloud לבין מכונות של Google Cloud אפשר לשכפל רק בין מכונות של Cloud SQL כדי להעביר נתונים אל Google Cloud או ממנה, לצמצם את זמן ההשבתה או להגן על נתונים בענן היברידי או בענן מרובה. כדי להעביר נתונים בין אזורים ב-Google Cloud ולצמצם את זמן ההשבתה תמיכה בשכפול בין גרסאות ראשיות שונות לא תומך בשכפול בין גרסאות ראשיות שונות - אילו פעולות יכולות לגרום להפעלה מחדש של מכונות Cloud SQL?
-
יכול להיות שהמכונות של Cloud SQL יופעלו מחדש כשאתם או Cloud SQL תבצעו את הפעולות הבאות:
- עדכון
- יצירה
- קידום רפליקה
- תחזוקה
- יצירת הרפליקה מחדש
- יתירות כשל
- הפעלה מחדש
- שחזור מכונה מגיבוי
- הפעלת זמינות גבוהה במכונה קיימת (זהו עדכון למכונה)
- הוספת דגל לניהול מסד נתונים שדורש הפעלה מחדש
הפעלה מחדש של מכונה לא משנה את כתובות ה-IP הציבוריות או הפרטיות של המכונה.
- כמה זמן המכונות מושבתות במהלך ההפעלה מחדש?
-
כשמפעילים מחדש מכונות, רוב המכונות מושבתות למשך דקה או שתיים. לפני שהמכונה מושבתת, כל החיבורים מסתיימים והעבודה הנוכחית נמחקת מהדיסק.
במכונות עם עומס גדול, התהליך הזה נמשך זמן רב יותר, ויכול להיות שייראה כאילו המכונה תקועה. במקרים כאלה, יכול להיות שיעברו עד שעה עד שהמכונה תכבה ותופעל מחדש. לפעמים לוקח הרבה זמן לכבות ולהפעיל מחדש מכונות, למשל כשיש למשתמש הרבה טרנזקציות כתיבה או כשהטרנזקציות פועלות במשך זמן רב.
- אפשר להגדיל או להקטין את מסד הנתונים?
-
אתם יכולים להגדיל את נפח האחסון שזמין למכונה בכל שלב, בלי לגרום להשבתה. אם קיבולת האחסון של המכונה גדולה יותר מהצרכים של האפליקציה, אתם יכולים לצמצם ידנית את קיבולת האחסון. אפשר גם להגדיר את המכונה כך שנפח האחסון שלה יגדל באופן אוטומטי כשהמקום הפנוי אוזל. מידע נוסף
- האם אפשר לשדרג ולשנמך את מספר המעבדים הווירטואליים?
-
כן. אתם יכולים לשנות את מספר המעבדים הווירטואליים שבהם אתם משתמשים במכונה. אפשר להגדיל או להקטין את מספר הליבות שבהן משתמשים כמה פעמים שרוצים. בדרך כלל, זמן ההשבתה לשינוי מספר ה-vCPUs נמשך פחות מחמש דקות. אם אתם מגדילים את מספר המעבדים הווירטואליים במכונה הראשית של מהדורת Cloud SQL Enterprise Plus, השינוי ייכנס לתוקף כמעט בלי זמן השבתה.
- האם צריך להשתמש במסוף Google Cloud כדי לנהל את Cloud SQL?
- לא. את כל משימות הניהול שאפשר לבצע באמצעות המסוף אפשר לבצע גם באופן פרוגרמטי באמצעות Cloud SQL Admin API, או באמצעות סקריפטים עם כלי שורת הפקודה
gcloud. - איך אפשר להחזיר את המקום מטבלה שהוסרה?
- כשמוחקים טבלה ממסד נתונים ובודקים את Google Cloud המסוף, יכול להיות שהשטח שהתפנה בעקבות מחיקת הטבלאות לא יופיע בערך המדווח של נפח האחסון שבשימוש במכונה. במכונות שפועלות עם MySQL 5.5, הדגל
innodb_file_per_tableמוגדר כ-OFFכברירת מחדל. InnoDB אף פעם לא מכווץ את מרחב הטבלאות שמוגדר כברירת מחדל. כדי לפנות מקום להגדרה הזו, צריך ליצור מכונה חדשה ממסד הנתונים הקטן יותר, או לשנות את הערך של הדגלinnodb_file_per_tableל-ON. למידע על שינוי דגלים לניהול מסדי נתונים, ראו הגדרת דגלים לניהול מסדי נתונים. - איך אפשר לפנות את המקום שתופסים הקבצים הזמניים?
- הקבצים הזמניים יכולים לגדול כששאילתות SQL יוצרות הרבה טבלאות זמניות. כדי לפנות את המקום שתופסות הטבלאות הזמניות, צריך להפעיל מחדש את מסד הנתונים. חשוב לדעת שהפעלה מחדש של מסד הנתונים לא מקטינה את נפח האחסון שהוקצה בדיסק כתוצאה מהגידול בקבצים הזמניים.
- איך אפשר לעקוב אחרי שינויים בנתונים?
- כדי לעקוב אחרי שינויים בנתונים, מפעילים את היומן הבינארי במכונה. מעקב אחרי שינויים בנתונים יכול לעזור לכם לשחזר נתונים שאבדו בטעות. במקרה של אובדן נתונים מקרי, למשל כתוצאה מפקודת
DROP DATABASE, אפשר לשחזר עד לקואורדינטות של היומן הבינארי, ממש לפני אירוע אובדן הנתונים. מידע נוסף זמין במאמר שחזור מערכת מנקודה מסוימת בזמן (PITR). עדיין אי אפשר להשתמש ביומנים בינאריים במכונות של PostgreSQL. - אפשר לייבא או לייצא מסד נתונים ספציפי?
- כן. במכונות MySQL ובמכונות SQL Server, אפשר לייבא ולייצא מסד נתונים אחד או כמה מסדי נתונים. במכונות PostgreSQL, אפשר לייבא או לייצא רק מסד נתונים ספציפי.
- אפשר לייבא או לייצא קובץ CSV?
-
אפשר לייבא או לייצא קובץ CSV ל-MySQL או ל-PostgreSQL. מידע נוסף זמין במאמר יצירת קובץ CSV.
בשלב הזה, אין תמיכה ב-CSV ב-Cloud SQL ל-SQL Server.
- האם צריך חשבון Cloud Storage כדי לייבא או לייצא נתונים למכונה?
- ב-Cloud SQL אפשר לייבא ולייצא מסדי נתונים, כמו קובצי SQL מוכנים לשימוש דחוסים או לא דחוסים וקובצי CSV, באמצעות קטגוריה של Cloud Storage. כדי לייבא או לייצא באמצעות קטגוריה של Cloud Storage, צריך להירשם לחשבון Google Cloud וליצור קטגוריה, או שתהיה לכם גישה לקטגוריה של Cloud Storage בחשבון אחר. מידע נוסף זמין במאמרים הבאים: ייצוא וייבוא באמצעות קובצי SQL מוכנים לשימוש, ייצוא וייבוא באמצעות pg_dump ו-pg_restore, ייצוא וייבוא באמצעות קובצי BAK או ייצוא וייבוא באמצעות קובצי CSV.
- מה המשמעות של
ERROR_RDBMSבפעולת ייבוא? -
השגיאה הזו מתרחשת אם MySQL מחזיר שגיאה במהלך פעולת ייבוא נתונים. סיבות נפוצות כוללות תחביר לא חוקי, שימוש במסד נתונים או בטבלה שלא הוגדרו וניסיון להריץ הצהרות MySQL שדורשות את ההרשאה
SUPER. - אם מוחקים מכונה, אפשר להשתמש שוב בשם שלה?
- כן.
- מהו משתמש מסד הנתונים של
cloudsqladmin? -
כל מכונה של Cloud SQL ל-MySQL ושל Cloud SQL ל-PostgreSQL כוללת משתמש במסד הנתונים שנקרא
cloudsqladmin. יכול להיות שתבחינו במשתמש הזה אם תריצו אתSHOW GRANTS FOR cloudsqladmin@localhostבמכונה של MySQL, או אם תריצו את המטא-פקודה\du cloudsqladminב-psqlאו את השאילתהSELECT * FROM pg_roles WHERE rolname = 'cloudsqladmin'במכונה של PostgreSQL. במקרים מסוימים, המשתמש הזה מופיע גם בטבלת המשתמשים של המערכת. חשבון המשתמש הזה משמש לתהליכים אוטומטיים שצריכים לגשת לנתונים במכונה (לדוגמה, גיבוי המכונה או ביצוע ייבוא או ייצוא). - איך משתמשים ב-
GRANT ALL? - Cloud SQL לא תומך בהרשאות
SUPER, ולכן הצהרותGRANT ALL PRIVILEGESלא יעבדו. במקום זאת, אתם יכולים להשתמש ב-GRANT ALL ON `%`.*. - איך אפשר לגשת ליומני העסקאות של המכונות?
- במכונות MySQL, אם מפעילים את יומן הרישום הבינארי במכונה (ראו הפעלת יומן רישום בינארי) ומגדירים כתובת IP למכונה (ראו הגדרת גישה לחיבורי IP), אפשר להשתמש בכלי השירות הרגיל של MySQL, mysqlbinlog, כדי לבחון את יומני הטרנזקציות של המכונה.
- מהי רמת הבידוד של טרנזקציה ב-Cloud SQL?
-
מכונות MySQL: Cloud SQL מספק רמת בידוד של טרנזקציה
REPEATABLE READ. אפשר לשנות את רמת הבידוד של הטרנזקציה בסשן הנוכחי, אבל בדרך כלל עדיף להשתמש בערך ברירת המחדל. מידע נוסף זמין במאמר רמות בידוד של טרנזקציות במסמכי התיעוד של MySQL.מכונות PostgreSQL: Cloud SQL מספק רמת בידוד של טרנזקציה
Read committed. אפשר לשנות את רמת הבידוד של טרנזקציה ספציפית, אבל בדרך כלל עדיף להשתמש בערך ברירת המחדל. למידע נוסף, קראו את המאמר Transaction Isolation במסמכי התיעוד של PostgreSQL.מכונות של SQL Server: ב-Cloud SQL יש את כל רמות הבידוד של טרנזקציות. לכן, יש תמיכה בערכים הבאים:
UNCOMMITTED,READ COMMITTED,REPEATABLE READ,SNAPSHOTו-SERIALIZABLE. - איך אפשר להגן על המכונה מפני מחיקה בטעות?
- אפשר להפעיל את ההגנה מפני מחיקה כשיוצרים מכונה או במועד מאוחר יותר. אם ההגדרה הזו מופעלת, צריך להשבית אותה לפני שמוחקים את המכונה. למידע נוסף על מניעת מחיקה של מכונה.
- למה אני לא רואה את התוכנית לדוגמה לביצוע שאילתה ב-Insights?
- יש לנו רק שאילתות לדוגמה כדי לקבל את התוכנית לביצוע שאילתה, בגלל ההשפעה שיכולה להיות לה על ביצועי השאילתה. לכן, לפעמים לא מופיעות תוכניות לדוגמה לביצוע שאילתות.
- איך אפשר לנסות את Cloud SQL?
- המופע הקטן ביותר הוא
db-f1-micro. אתם יכולים להשתמש בו כדי לנסות את השירות. חשוב לזכור שהסכם ה-SLA לא כולל מכונות עם ליבת מעבד משותפת. - כמה מכונות אפשר ליצור בפרויקט?
- למידע על מגבלת המכונות, ראו מכסות ומגבלות.
- איזה גודל של מכונה של מסד נתונים צריך? כמה זיכרון RAM?
- באופן כללי, אפשר לשפר את הביצועים של מסד הנתונים על ידי בחירת מכונה גדולה יותר עם יותר זיכרון RAM ומעבד (CPU). כך משתפרים הביצועים של שאילתות רבות שכוללות כמות גדולה של חישובים, כמו שאילתות שכוללות איחודים, ORDER BY או GROUP, אבל הביצועים של עדכונים שמשפיעים על שורות בודדות לא יושפעו הרבה. עם זאת, ככל שהמכונה גדולה יותר, כך זמן האחזור של הפעולה ארוך יותר. למידע נוסף על גודלי מכונות ועל תמחור, ראו את דף התמחור.
- איך מחושב השימוש במכונה שלי?
-
החיוב הוא לפי דקה, על הזמן שבו המכונה פועלת.
מכונות של SQL Server: הרישוי של Microsoft SQL Server מחייב הקצאה של רישיון ליבה לכל מעבד וירטואלי במכונה, עם מינימום של ארבע ליבות לכל מכונה. כדי לעמוד בדרישות האלה, במכונות עם פחות מ-4 מעבדים וירטואליים, העלות של SQL Server תהיה פי 4 ממחיר הרישיון. במכונות עם 4 מעבדי vCPU או יותר, תחויבו על מספר רישיונות SQL Server ששווה למספר מעבדי ה-vCPU.
- איך מחושב נפח האחסון?
- האחסון מחושב לפי נפח האחסון שהקציתם למכונה. החיוב על אחסון של גיבויים נקבע לפי נפח האחסון שהגיבויים תופסים. החיוב על האחסון מתבצע גם אם המכונה מופעלת וגם אם היא מושבתת.
- איך אפשר לראות כמה אשלם?
- בכרטיסייה Billing במסוףGoogle Cloud מופיעים החיובים שנצברו במכונות מאז שהונפק החשבון האחרון.
- מה קורה כשהמכונה מגיעה לגודל המותר?
- אם המכונה מגיעה לגודל האחסון שהוקצה, ולא הפעלתם את ההגדלה האוטומטית של נפח האחסון או שהיא הגיעה למגבלה שהוגדרה, לא תוכלו לכתוב למסד הנתונים עד שתגדילו את נפח האחסון. כדי להגדיל את נפח האחסון לא צריך להפעיל מחדש את המכונה או להשבית אותה.
- למה המכונה שלי מושעית?
- כנראה שיש בעיה בחשבון Google Cloud שלך. כדי לבדוק את סטטוס החיוב, אפשר להגיש בקשה לתמיכה בנושאי חיוב. אחרי שפותרים את הבעיה בחיוב, המכונה חוזרת לסטטוס "ניתן להפעלה" תוך כמה שעות. חשוב לדעת: מכונות MySQL מושעות נמחקות אחרי 90 יום.
- למה המכונה שלי נמחקה?
-
מכונות שמושעות למשך 90 ימים נמחקות. ההגדרה הזו חלה על מכונות במצב
SUSPENDED. מכונות שהופסקו, עם הסטטוסRUNNABLE, לא נמחקות. - איך אפשר לבטל את החשבון ב-Cloud SQL?
- כדי להשבית את Cloud SQL בפרויקט, נכנסים לGoogle Cloud מסוף, בוחרים את הפרויקט ובוחרים את שירות ה-API כדי לפתוח את לוח הבקרה של ה-API. מוצאים את Cloud SQL API ולוחצים על Disable.
- איך משביתים את החיוב?
- כדי להשבית את החיוב, לוחצים על Disable billing בחלונית Billing & settings של הפרויקט במסוף Google Cloud . אם משביתים את החיוב, משביתים גם את שירות Cloud SQL. לפני שמשביתים את החיוב, חשוב לוודא שבאמת רוצים להשבית את שירות Cloud SQL.
אחרי שתשביתו את החיוב, תקבלו חשבון אחרון על חיובים שבוצעו בין תחילת מחזור החיובים לבין מועד הביטול.
. - האם אפשר להתחבר מ-App Engine למכונה של MySQL?
- אפשר להתחבר מאפליקציית App Engine למכונה של MySQL, גם אם האפליקציה פועלת בסביבה הרגילה וגם אם היא פועלת בסביבה הגמישה. מידע נוסף זמין במאמרים התחברות מסביבת ברירת המחדל ב-App Engine והתחברות מהסביבה הגמישה ב-App Engine.
- אפשר להתחבר מ-App Engine למכונה של PostgreSQL?
- אתם יכולים להתחבר מאפליקציית App Engine למכונה של PostgreSQL, בהתאם לסביבה ולשפה שבהן אתם משתמשים. מידע נוסף זמין במאמרים התחברות מסביבת ברירת המחדל ב-App Engine והתחברות מהסביבה הגמישה ב-App Engine.
- אפשר להתחבר מ-App Engine למכונה של SQL Server?
- אתם יכולים להתחבר מאפליקציית App Engine למכונה של SQL Server, בהתאם לסביבה ולשפה שבהן אתם משתמשים. מידע נוסף זמין במאמרים התחברות מסביבת ברירת המחדל ב-App Engine והתחברות מהסביבה הגמישה ב-App Engine.
- האם לאפליקציית App Engine בארה"ב יש גישה למכונה של Cloud SQL באיחוד האירופי (ולהפך)?
-
אם אתם מתחברים למכונה של MySQL, האפליקציה שלכם ב-App Engine לא צריכה להיות באותו אזור, והיא יכולה לפעול בסביבה הרגילה או הגמישה. עם זאת, ככל שהמרחק בין המכונה של Cloud SQL לבין האפליקציה ב-App Engine גדול יותר, כך זמן האחזור של החיבורים למסד הנתונים ארוך יותר.
אם אתם מתחברים למכונה של Cloud SQL, האפליקציה שלכם ב-App Engine לא צריכה להיות באותו אזור. עם זאת, ככל שהמרחק בין המכונה של Cloud SQL לאפליקציה ב-App Engine גדול יותר, כך זמן האחזור של החיבורים למסד הנתונים ארוך יותר.
- איזה שירות Google Cloud של מסד נתונים מתאים לי?
- הבחירה תלויה בדרישות של האפליקציה. Google Cloud מציע כמה אפשרויות לאחסון, לניהול ולאחזור של הנתונים. מידע נוסף זמין במאמר מסדי נתונים שלGoogle Cloud .
- האם צריך להתקין שרת מסד נתונים מקומי כדי להשתמש בשרת הפיתוח של App Engine?
- לא. אתם יכולים להגדיר את App Engine כך שישתמש ב-Cloud SQL או בשרת מסד נתונים שמותקן באופן מקומי כשמריצים בשרת הפיתוח.
- באילו שפות אפשר להשתמש כדי לגשת למכונה?
- בסביבת ברירת המחדל ב-App Engine יש תמיכה בכמה שפות שאפשר להשתמש בהן כדי להתחבר למכונות. למידע נוסף, ראו התחברות מסביבת ברירת המחדל ב-App Engine או התחברות מהסביבה הגמישה ב-App Engine.
אם אתם לא משתמשים ב-App Engine, אתם יכולים להשתמש בכל שפה שיש לה מחבר או API משויכים. לרשימה של השפות הנתמכות, עיינו בפרק Connectors and APIs במדריך העזר של MySQL.
- אפשר להשתמש ב-Django עם Cloud SQL?
- כן. Cloud SQL תואם ל-Django. למידע נוסף, קראו את המאמר תחילת העבודה עם Django.
- באילו פלייסהולדרים אפשר להשתמש במחרוזת השאילתה ב-Python?
- משתמשי Python יכולים להשתמש רק בקוד הפורמט
%sבהחלפת פרמטרים. לכן, ההצהרה הבאה לא תקינה:cursor.execute('INSERT INTO entries (guestAge) VALUES (%d)', (age)). - איך מנהלים את החיבורים?
-
ניהול יעיל של החיבורים למסד הנתונים הוא היבט חשוב בפיתוח אפליקציות של מסדי נתונים, כולל שימוש במאגר חיבורים ובהשהיה מעריכית לפני ניסיון חוזר (exponential backoff). במאמר ניהול חיבורים למסדי נתונים תוכלו לקרוא דוגמאות לשימוש בשיטות האלה במגוון שפות וסביבות פיתוח.
מידע נוסף על מגבלות החיבור למכונות זמין במאמר מכסות ומגבלות.
- מה המשמעות של SQLException עם ההודעה "Invalid connection ID"?
- המשמעות היא שהחיבור כבר לא פתוח בשרת והלקוח מחק אותו. אין צורך להפעיל את הפונקציה close בחיבורים האלה, כי הם כבר סגורים.
- האם אפשר לגשת למכונה של Cloud SQL באופן פרוגרמטי מחוץ ל-App Engine?
- כן. אתם יכולים לגשת למכונות Cloud SQL באופן פרוגרמטי מאפליקציות חיצוניות, באמצעות כל שפה נתמכת. סקירה כללית על החיבור