![]() |
حصريا لـ AWT : كيفية التعامل مع ال Mysql باستخدام ال Shell
سم الله الرحمن الرحيم :
في البدايه ، شكرا للويب العربي لاعطائنا هذه الفرصه للتحاور وتناقش الاراء وتبادل الخبرات . ############ xD ####### ## الموضوع : حصري ل AWT ، كيفية التعامل مع ال Mysql باستخدام ال Shell ، اقتراحات ## كاتب الموضوع : Ali Hamad ## الحقوق : يمنع نسخ الموضوع او نقله خارج AWT ولامانع من وضع روابط للموضوع . ## رقم الدرس : 1 ## تحذير : انت تستخدم هذا الدرس على مسؤوليتك الخاصة فقط ########### xD ####### س1 : كيفيه انشاء قواعد بيانات باستخدام الشل ؟ إقتباس:
اذن سيكون الامر : إقتباس:
ويوجد طريقه اخرى باستخدام شل ال Mysql ، وهي كالتالي : في البداية الدخول على شل ال Mysql : إقتباس:
بعد ذلك ، انشاء القاعده بالامر : إقتباس:
س 2 : كيف ساقوم بانشاء اسم مستخدم للقاعدة للتحكم بها ؟ قبل كل شيء لابد ان تقوم بمعرفة باسورد الروت الخاص بقواعد البيانات : إقتباس:
## اذن كيف ساقوم بانشاء اسم مستخدم لقاعدة البيانات ؟ في البداية لابد من الدخول على محرر الشل الخاص بقواعد البيانات ، إقتباس:
بعد ذلك ستقوم بكتابة الامر : إقتباس:
إقتباس:
+-----------------------+ | PASSWORD ('AliHamad') | +-----------------------+ | 5428fa3b0b637ab8 | +-----------------------+ اذن سنستخدم الشفرة : 5428fa3b0b637ab8 سنقوم الان بانشاء اسم المستخدم بالباسورد الذي قمنا بانشائه :) ولنفترض بان اسم المستخدم سيكون ali_xD: نطبع الامر التالي في شل ال mysql إقتباس:
قمنا الان باضافة اليوزر بنفس الباسورد الذي استنتجناه سابقا ، س3 : كيف اقوم باضافة اسم المستخدم الى قاعدة البيانات التي قمت بانشائها سابقا ؟ نقوم الان بالدخول الى شل قواعد البيانات ، mysql -uroot -p نقوم بادخال باسورد الروت لقواعد البيانات ومن ثم نقوم بالدخول الى القاعدة mysql إقتباس:
بعد ذلك نقوم باضافة اسم المستخدم الى قاعدة البيانات مع الخصائص التي نريد اعطائها له :) إقتباس:
قمنا الان باضافة اسم المستخدم بكلمة المرور الخاصه به الى قاعدة البيانات التي انشأناها سابقا ، ويوجد طريقة اخرى ، ساقوم بذكرها في الاسفل : 1) الدخول على شل المايسقول : إقتباس:
طباعة الامر : إقتباس:
تفصيل الامر : DATABASENAME = اسم قاعدة البايانات . USER = اسم المستخدم لقاعدة البيانات LOCALHOST = الهوست الموجود عليه قاعدة البيانات وهو في الغالب localhost PASSWD = كلمة المرور الخاصة بقواعد البيانات . ولو رجعنا للمثال ، سيكون الامر : إقتباس:
لنقم الان بالخروج من شل قواعد البيانات ، exit نطبع الامر التالي لحفظ التغييرات : إقتباس:
لقنم الان بالتاكد من ان اسم المستخدم اعلاه لايقوم الا بالدخول على قاعدة البيانات المحدده له بالخصائص التي اعطيناه اياها سابقا : إقتباس:
نقوم بطباعة الباسورد الخاص بالقاعدة Ali_xD " في المثال هي ( AliHamad) ، ومن ثم نقوم بطباعة الامر : إقتباس:
ستظر النتيجه : إقتباس:
إقتباس:
عند اذن سيقبل الدخول بالتاكيد لتلك القاعدة :) . س4 : هل يوجد هناك امر للتاكد من الخصائص المعطاه لليوزر اعلاه بالدخول على تلك القاعدة فقط ؟ إقتباس:
إقتباس:
ستظهر النتيجة : +-------------------------------------------------------------------------------------------+ | Grants for Ali_xD@localhost | +-------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'Ali_xD'@'localhost' IDENTIFIED BY PASSWORD '5428fa3b0b637ab8' | | GRANT ALL PRIVILEGES ON `Ali_xD`.* TO 'Ali_xD'@'localhost' | +-------------------------------------------------------------------------------------------+ كما نشاهد بان الخصائص فقط حددت لليوزر Ali_xD للقاعدة Ali_xD بالباسورد الذي قمنا باختياره :) . ####فاصل للراحة :)##### # يانعمة السي بنل :) #### ####انتهى الفاصل :)##### س5: هل بالامكان تغيير الباسورد الخاص باسم المستخدم ؟ بالتاكيد نعم بالطريقة التالية : * الدخول على شل قواعد البيانات : إقتباس:
ثم اطبع الامر : إقتباس:
حيث ان ال YourNewPasswd هو باسوردك الجديد بدون تشفير ، ولنفترض اني اريد الباسورد الجديد يكون AWT ، اذن الامر سيكون : إقتباس:
exit ومن ثم لحفظ المتغيرات : إقتباس:
س6 : لدي سيرفر ، واريد ان اقوم بعمل بك لقواعد البيانات كل 6 ساعات لحظف المتغير فقط ؟ لا مشاكل :) اطبع الاوامر : إقتباس:
إقتباس:
إقتباس:
إقتباس:
بعدين :wq انتر اكيد راح تعطي الملف تصريح 755 إقتباس:
طبعا تبي تضيف كرون جوب على اساس يتنفذ الملف كل 6 ساعات مثلا اطبع الامر : إقتباس:
وصار عندك بك اب منفصل لقواعد البيانات في مجلد اخر كل 6 ساعات لكل قواعد البيانات لاخذ المتغيرات فقط ، مع العلم بانه يمكن اخذ بك اب بطريقة إقتباس:
س7 : لا استخدم السي بنل ، ونسيت كلمة المرور الخاصة ب Root ال Mysql ، كيف اقوم باستعادة الباسورد او تغيره ؟ 1/ في البداية ايقاف كل عمليات قواعد البيانات على السيرفر : إقتباس:
إقتباس:
إقتباس:
file.pid = hostname.pid كمثال : server.arabwebtalk.pid ## بداية فاصل ## والله الي توقفت ال mysql نهائي :) ## نهاية فاصل ## التاكد من انه لايوجد اي عملية mysql تعمل على السيرفر : إقتباس:
ماراح يظهر لك غير سطر واحد ، دليل ان كل العمليات الخاصه بال mysql توقفت . بعد كذا راح تسوي ملف صغير نفترض ان اسمه : /home/xd اذن : vi /home/xd بعد كذا تحط فيه الامر هذا : إقتباس:
طبعا تستبدل كلمة YourNewPasswd بكلمة المرور الجديده ، طبعا بدون تشفير ، مثلا ابي الباسورد يكون AWT ، رايح يكون الامر : إقتباس:
إقتباس:
لاحظ امتداد الملف ، اذن ستعمل قواعد البيانات من جديد بعد تغير الباسورد الى باسوردك الجديد ومن ثم تحذف الملف إقتباس:
** لو تستخدم السي بنل ، تقدر من ال WHM وايضا لو نسيت الباسورد تقدر تطلع الناتج : إقتباس:
لكن لو اتبعت الطريقة اعلاه ، لازم بعد كذا تسوي الامر هذا : nano -w /root/.my.cnf او اي محرر ثاني ، وتغير الباسورد القديم بالباسورد الي اخترته ، وبعدها تطبق الامر : إقتباس:
س8 : كيف اقوم بعمل repair او optimize او analyze لقاعدة معينه او كل القواعد على السيرفر بالشل ؟ لعمل ريبير لقاعدة معينة : إقتباس:
لعمل ريبير لكل القواعد في السيرفر : إقتباس:
لعمل ابتومياز لقاعدة معينة : إقتباس:
لعمل ابتومايز لكل القواعد : إقتباس:
في النهاية : انا اتبعت في الشرح طريقة معقده ، والا كان هناك اوامر اخرى يمكن تطبيقها مثل Mysqlaccess و GRANT في ال Mysql شل ، ولكن كل الغاية في فهم الطريقة التي تعمل بها قواعد البيانات ، ملاحظة : كل الاوامر الي كتبت اعلاه يبي لك ، تفتح ملف نصي وتقراها من اليسار الى اليمين CTRL + Shift " اليسار " . اخر تعديل في الموضوع : كانت بتاريخ 11/8/1426 هـ صادق التحايا ، علي حمد . |
ما شاء الله
الصراحه شرح اكثر من رائع ابو حمد الله يعطيك الف عافية والصراحه شرح ما يطلع إلا من خبير واستاذ :) تقبل تحياتي |
حقيقي شرح وافي وقيّم للغاية
مشكور كتير أخي ... وجزاك الله كل خير ونحن في انتظار المزيد من هذه المشاركات والمواضيع الرائعة :) |
جزاك الله خير على هالشرح الوافي .
وان شاء الله نستفيد منه كلنا :) |
مشكور على الشرح الوافي و السهل
والله يعطيك العافية . |
مشكور أخ على على الموضوع الرائع
. فعلا نفتقد لمثل هذه المواضيع |
إقتباس:
|
إقتباس:
|
إقتباس:
|
إقتباس:
شكرا لك على مرورك ، انشاء الله انك استفدت من الدرس . |
إقتباس:
|
شرح أكثر من رائع أخوي علي حمد
ولكن لماذا نستخدم الشيل في انشاء قاعدة البيانات ؟ أو ماهو الشيء الاضافي الذي يجعلنا نستخدمه مع وجود phpmyadmin وشكرا لك |
درس من العيار الثقيل ياعلي ماشاء الله عليك
ألف شكر على هالمجهود الكبير معلومات جديده وهامه لكل من يدير سيرفر اتمنى الشباب يجربون الشرح ويكون فيه نقاش حول الموضوع عشان تكون الفائده مضاعفه حفظت الصفحة :) مرجع مهم الواحد اكيد راح يحتاجه تحياتي |
إقتباس:
الشيء الاضافي : بان ال PhpMyAdmin ماهو الا مدير لقواعد البيانات " كالسي بنل / WHM في ادارة سيرفرات اللينكس " اي ان الاساس هو Mysql shell وليس ال phpmyadmin ، وتتركز فائدته في 3 خطوات : 1/ في معرفة حالة ال Mysql امنيا في تطبيق اي امر بسهولة في ال Mysql shell ومعرفة صلاحيات كل يوزر بدل البحث في كل موقع وفي كل صلاحية لكل قاعدة . 2/ سرعة التحكم وانجاز الطلب ، بعكس السي بنل و ال PhpMyadmin ، وانا اعني هنا بان ال mysql shell او ال shell آمن واضمن في التحكم ، حيث ان السي بنل او ال phpmyadmin ماهي الا سكربتات معرضة للاختراق او اكتشاف ثغرات بها غير امنه ، كما انه سيرفرات اليونكس لاتعني بالضرور Cpanl / WHM فكثير من زملاء العمل ، يعملون على سيرفرات بدون لوحات تحكم ، وايضا انا في المكتب ، استعمل سيرفر داخلي بقواعد بيانات ، ومن الاستحالة ان اقوم بتركيب السي بنل على سيرفر LocalHost لانه في الاساس لايوجد رخصه له حتى الان . 3/ الهدف من الدرس ليس فقط انشاء او اضافة اسم مستخدم لقاعدة ، انما الهدف هو فهم عمل تلك السكربتات اساسا في تطبيق الاوامر هذه ، كمدير سيرفر ، لابد ان تكون ملم بمعظم هذه الافكار لكي تقوم باستنتاج بعض الطرق السريعة لانجاز عملك او حل بعض المشاكل بدون الرجوع الى السي بنل او ال phpmyadmin فقط تتعرض يوما ما لادارة نظام لايحوي كنترول بنل ، والتوسع اكثر في كل مايتعلق بسيرفرك ، بالتأكيد ستكون ال PhpMyAdmin او ال Whm مفضلة للمبتدئين ولكن الكثير من زملاء العمل ، لايجيد 100 % التعامل مع ال Whm وال PhpMyAdmin ، ولكن يستطيع عمل كل ماذكر اعلاه بالشل ، وهذا هو الصحيح في نظري ، لان ادارة النظام تعني اجادة التحكم الكامل به ، وليس الاعتماد ""@@ الكلي ""@@ على السكربتات . شكرا لك على قرائتك للموضوع وعلى مداخلتك مره اخرى . |
إقتباس:
شكرا لك على مداخلتك في الموضوع ، وشرف كبير لزيارتك وانشاء الله انه حقق الفائدة المرجوة . بالتاكيد تشرفت بان يكون احد مواضيعي في مفضلة استاذ واخ عزيز اكن له كل التقدير والاحترام . اتفق معك في ان النقاش في الموضوع يثريه بالتاكيد وكنت اتمنى ان يقوم احد الاخوة بتجربة الشرح واعطائ ملاحظاته لاثراء الموضوع بكمية اكبر من المعلومات . شكرا لك مره اخرى ، ويامراحب . |
يعطيك العافية أخوي علي حمد
ماقصرت كفيت ووفيت تحياتي الحارة :d لك |
السلام عليكم
في البداية أشكرك أخي العزيز جزيل الشكر والامتنان على هذا الدرس الدسم, ولدي سؤال وأود أن أطرحه عليك وأتمنى أن أعرف الاجابه عليه أريد أن أنسخ مثلاً قاعدة بيانات موجوده اسمها vb وأريد نسخ هذه القاعدة بكامل محتوياتها في قاعدة بيانات جديده اسمها vb3 كيف يتم عمل هذه الطريقه ؟؟ وأتمنى أن نرى دروس أكثر عن التعامل مع الـShell في القريب العاجل اندكس |
ما شاء الله عليك اخوي
الف شكر على هذا الموضوع المتميز تحياتي |
إقتباس:
بخصوص نسخ قاعدة بيانات اسمها vb ونقل محتواها الى قاعده اسمها vb3 : اولا نسخ القاعده باسم vb : الامر : mysqldump -uUser -p DataBaseName > files.sql توضيح الامر : User = اسم المستخدم للقاعدة DataBaseName = اسم قاعدة البيانات : اياكانت على الصيغة ali_vb files.sql = اي اسم تريد ** سيطلب منك كلمة المرور الخاصة باسم المستخدم للقاعدة ، قم بادخاله فقط . بكذا صار عندك نسخة من القاعده ، ثانيا : نقل محتوى القاعدة الي قاعدة اسمها vb3 mysql -uUSER -p DatabaSeName < files.sql توضيح الامر : User = اسم المستخدم للقاعدة DataBaseName = اسم قاعدة البيانات files.sql = اي اسم تريد ** سيطلب منك كلمة المرور الخاصة باسم المستخدم للقاعدة ، قم بادخاله فقط . وبكذا قمت بزراعة قاعد البيانات في قاعد اخرى بنفس محتواها . تحياتي ،، Ali Hamad |
إقتباس:
تشرفت بمرورك ، تحياتي ، Ali Hamad |
جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 01:31 AM. |
Powered by vBulletin
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012