הגדרות כדי לאפשר למחשבים אחרים להתחבר למסדי נתונים MySQL (גירסת Windows)

עודכן דף :
תאריך יצירת דף :

סביבת הפעלה

MySQL
  • MySQL 8.0
חלונות
  • חלונות 11

דרישות מוקדמות

MySQL
  • MySQL 8.0
חלונות
  • חלונות 11
  • חלונות 10
שרת Windows
  • שרת Windows 2022
  • שרת Windows 2019
  • שרת Windows 2016
  • Windows Server 2012 R2

תנאי מקדים

  • MySQL 8 מותקן

בדיקת חומת האש

ב- MySQL, חומת האש מוגדרת במסך הבא במהלך ההתקנה, כך שאינך צריך להגדיר הגדרות נוספות.

בדוק את הגדרות חומת האש שלך ליתר ביטחון. מכיוון שהפעולה עד התצוגה משתנה בהתאם לגירסת Windows, הזן "חומת אש" בתפריט התחלה כדי להציג אותה.

בחר "מתקדם" מהתפריט בצד שמאל.

אם תבחר "כללי כניסה" משמאל, תוכל לראות כי "יציאה 3306" ו- "יציאה 33060" נוספו לרשימה. זה מה שנוסף ב- MySQL.

בדיקת קובץ התצורה

בעבר, היה צורך bind-address לשנות מקובץ התצורה, אך בגירסה הנוכחית, פריט זה אינו קיים, ולכן אין צורך לשנות את ההגדרה.

ניתן למצוא את קובץ התצורה עבור MySQL ב- Windows במיקומים הבאים: ProgramData התיקיה מוסתרת, לכן הזן את הנתיב ישירות בשורת הכתובת של סייר הקבצים או הגדר את התיקיה המוסתרת כך שתהיה גלויה.

C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

הגדרות הרשאת גישת משתמש

כדי להיכנס למסד נתונים MySQL, עליך לציין משתמש, אך כברירת מחדל כל המשתמשים יכולים לגשת אליו רק באופן מקומי. אז, כאן נגדיר הרשאות עבור המשתמש.

אני פועל בחשבון כדי root לשמור את שלב הוספת החשבון הפעם. בפעולה בפועל, רצוי ליצור חשבון משתמש נפרד ולאפשר חיבור לחשבון זה.

קיימות שתי דרכים לאפשר חיבורים: באמצעות פקודה או באמצעות ממשק המשתמש הגרפי.

הגדרת הרשאות גישת משתמש (פעולות GUI)

בתפריט התחלה, בחר "MySQL -> MySQL Workbench 8.0 CE" כדי להפעיל אותו.

כאשר אתה מפעיל אותו, יש מופע ברירת מחדל בפינה השמאלית התחתונה, לכן בחר אותו.

תתבקש להזין סיסמה, אז היכנס באמצעות חשבון השורש.

בחר בכרטיסיה ניהול מתפריט נווט משמאל ובחר משתמשים והרשאות.

ברשימה, בחר את החשבון שעבורו ברצונך לשנות הרשאות. root במקרה זה, בחרנו חשבון.

Limit to Hosts Matching אני חושב שיש פריט והוא מוגדר כברירת localhost מחדל. משמעות הדבר היא כי ניתן לגשת אליו רק מ localhost. הגדר ערך זה לכתובות ה- IP של המחשבים שברצונך לאפשר להם חיבורים. אם תזין כרגיל, רק יחידה אחת תהיה ממוקדת, אך אם ברצונך לבחור טווח, באפשרותך להשתמש בתו הכללי "%", כך שאם תציין "192.168.0.%", תאפשר "192.168.0.0" ~ "192.168.0.255".

לאחר הכניסה, תוכל להחיל אותו על ידי לחיצה על כפתור "החל" בפינה השמאלית התחתונה.

באפשרותך לראות שגם רשימת המשתמשים השתנתה.

הגדרת הרשאות גישת משתמש (פקודות)

תוספת
זה לא מידע סופי כי זה במסגרת המחקר, אבל ב MySQL 8, לא ניתן לשנות את מארח ההרשאה עם פקודה לאחר יצירת המשתמש, ולכן יש צורך לאשר את המארח בזמן יצירת המשתמש.

מתפריט התחלה, בחר "MySQL -> MySQL 8.0 Command Line Client" והפעל אותו.

תתבקש להזין סיסמה, לכן הזן את סיסמת השורש.

באפשרותך לעיין ברשימת המשתמשים והמארחים על-ידי הזנת הפקודה הבאה:

select user,host from mysql.user;

כדי ליצור משתמש, הזן את הפקודה הבאה: הזן את כתובת ה- IP של המחשב שאליו ברצונך להתחבר חיצונית ל- "Permission Host". מאחר שניתן להשתמש בתו הכללי "%", הזן "%" כדי לאפשר גישה מכל, ו- "192.168.0.0" ~ "192.168.0.255" כדי לאפשר "192.168.0.%". אם ברצונך לכלול "%", הקף אותו במרכאות בודדות.

create user <ユーザー名>@<アクセス許可ホスト> identified by '<パスワード>';

קלט לדוגמה

create user user1@'192.168.0.%' identified by 'xxxxxxxx';

הצלחתי ליצור משתמש עם הפקודה לעיל, אך אין לי הרשאות גישה, לכן הוספתי הרשאות באמצעות הפקודה הבאה.

סוגי ההרשאות כוללים את "כל [הרשאות]", "צור (הרשאה ליצירת מסדי נתונים, טבלאות וכו')" ו"בחר (עיין ברשומות טבלה)". אנא בדוק באתר הרשמי את תוכן ההרשאות.

ניתן לציין הרשאות שיש להגדיר על בסיס מסד נתונים או לפי טבלה. אם תזין "*.*", תוכל להגדיר הרשאות גישה עבור כל מסדי הנתונים והטבלאות.

grant <権限の種類> on <データベース名>.<テーブル名> to <ユーザー名>@<アクセス許可ホスト>;

קלט לדוגמה

grant all privileges on *.* to user1@'192.168.0.%';

כדי לשקף את ההגדרות, הזן את הפקודה הבאה:

flush privileges;

אם תבדוק שוב את רשימת המשתמשים, תוכל לאשר שהיא נוצרה והוגדרה.

בדיקת חיבור

כל כלי שניתן לחבר מבחוץ הוא בסדר, אבל הפעם ננסה להתחבר עם Workbench, הלקוח הרשמי של MySQL.

הפעל את Workbench אם הוא מותקן במחשב אחר.

הוסף חיבור MySQL.

הזן את ההגדרות הדרושות עבור החיבור. אתה יכול להשתמש בשם DNS, אבל מסיבה כלשהי לא הצלחתי להתחבר ל- Workbench, אז ציינתי אותו לפי כתובת IP.

אם החיבור נבדק והצליח, ניתן לשפוט כי ההגדרה היא נורמלית.