المشروب تركيب mysql على نظام التشغيل ماك




macos homebrew (9)

إذا تم بالفعل تثبيت mysql

وقف mysql تماما.

  1. mysql.server stop <- قد تحتاج إلى التحرير على أساس الإصدار الخاص بك
  2. ps -ef | grep mysql ps -ef | grep mysql <- القوائم العمليات مع mysql في أسمائهم
  3. kill [PID] <- قتل العمليات من قبل PID

إزالة الملفات. التعليمات أعلاه جيدة. سأضيف:

  1. sudo find /. -name "*mysql*"
  2. باستخدام حكمك ، rm -rf هذه الملفات. لاحظ أن العديد من البرامج لديها برامج تشغيل لـ mysql التي لا تريد إزالتها. على سبيل المثال ، لا تحذف الأشياء في دليل تثبيت PHP. قم بإزالة الأشياء في دليل mysql الخاص بها.

التثبت

نأمل أن يكون لديك البيرة. إن لم يكن ، تنزيله.

أحب أن أجرب الشراب كجذر ، لكنني لا أعتقد أن عليك ذلك.

  1. sudo brew update
  2. sudo brew install cmake <- dependency for mysql، useful
  3. sudo brew install openssl <- التبعيات لـ mysql ، مفيدة
  4. sudo brew info mysql <- skim through this ... انه يعطيك فكرة عن ما سيأتي بعد ذلك
  5. sudo brew install mysql --with-embedded; say done sudo brew install mysql --with-embedded; say done <- تثبيت mysql مع خادم مضمن. يخبرك عند الانتهاء (استغرق التثبيت 10 دقائق)

بعدئذ

  1. sudo chown -R mysql /usr/local/var/mysql/ <- mysql لن يعمل لي حتى ركضت هذا الأمر
  2. sudo mysql.server start <- مرة أخرى ، قد يختلف بناء الجملة الصحيح
  3. قم بإنشاء مستخدمين في mysql ( http://dev.mysql.com/doc/refman/5.7/en/create-user.html ). تذكر أن تضيف كلمة مرور للمستخدم الجذر.

أحاول إعداد MySQL على نظام التشغيل Mac OS 10.6 باستخدام برنامج Homebrew بواسطة brew install mysql 5.1.52 .

كل شيء على ما يرام وأنا أيضا ناجحة مع mysql_install_db .
ولكن عندما أحاول الاتصال بالخادم باستخدام:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin -u root password 'mypass'

انا حصلت:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin: connect to server at 'localhost' 
failed error: 'Access denied for user 'root'@'localhost' (using password: NO)'

لقد حاولت الوصول إلى mysqladmin or mysql using -u root -proot أيضًا ،
ولكنها لا تعمل مع أو بدون كلمة المرور.

هذا هو تثبيت العلامة التجارية الجديدة على جهاز العلامة التجارية الجديدة وعلى حد علمي يجب أن يكون الوصول إلى التثبيت الجديد دون كلمة مرور الجذر. لقد حاولت أيضًا:

/usr/local/Cellar/mysql/5.1.52/bin/mysql_secure_installation

لكنني كذلك

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

أعتقد أنه يمكن للمرء أن ينتهي في هذا الموقف مع الإصدارات القديمة من mysql مثبتة بالفعل. واجهت نفس المشكلة ولم ينجح أي من الحلول المذكورة أعلاه. أصلحت ذلك:

استخدام أوامر remove cleanup الشراب ، إلغاء تحميل البرنامج النصي launchctl ، ثم حذف دليل mysql في /usr/local/var ، حذف my /etc/my.cnf الحالية الخاصة /etc/my.cnf (ترك هذا الأمر متروك لك ، في حالة تطبيقه) و launchctl plist

تحديث سلسلة ل plist. لاحظ أيضًا أن دليل البرنامج النصي البديل البديل الخاص بك سيعتمد على إصدار MySQL الذي تقوم بتثبيته.

خطوة بخطوة:

brew remove mysql

brew cleanup --force

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

sudo rm -rf /usr/local/var/mysql

ثم بدأت من الصفر:

  1. تثبيت mysql مع brew install mysql
  2. شاءت أوامر المشروب المقترح: (انظر الملاحظة: أدناه)

    unset TMPDIR
    
    mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
    
  3. قم ببدء تشغيل mysql مع الأمر mysql.server start ، لتتمكن من تسجيل الدخول

  4. استخدم البرنامج النصي البديل البديل:

    /usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation
    
  5. يتبع المقطع launchctl من إخراج البرنامج النصي الحزمة الشراب مثل ،

    #start
    launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    
    #stop
    launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    
  6. فقاعة.

نأمل أن يساعد شخص ما!

ملاحظة: - brew cleanup --force على brew cleanup سوف تنظيف البراميل التي عفا عليها الزمن أيضا ، أعتقد أنها ميزة homebrew ish الجديدة.

لاحظ الثاني: يقول أحد المعلقين أن الخطوة 2 غير مطلوبة. أنا لا أريد اختباره ، لذلك YMMV!


حاول بإعطاء إذن منحة الأمر من mysql


حسنًا ، كان لدي نفس المشكلة وحلتها. لسبب ما لا يعمل البرنامج النصي mysql_secure_installation من خارج منطقة الجزاء عند استخدام Homebrew لتثبيت mysql ، لذلك فعلت ذلك يدويا. على CLI أدخل :

mysql -u root

يجب أن تحصل في mysql. الآن قم بما يلي (مأخوذ من mysql_secure_installation):

UPDATE mysql.user SET Password=PASSWORD('your_new_pass') WHERE User='root';
DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');
DELETE FROM mysql.user WHERE User='';
DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'
DROP DATABASE test;
FLUSH PRIVILEGES;

الآن قم بالخروج والعودة إلى mysql مع: mysql -u root -p


فيما يلي تعليمات مفصلة تجمع بين التخلص من جميع MySQL من جهاز Mac الخاص بك ثم تثبيته The Brew Way كما كتب Sedorner أعلاه:

أزل MySQL تمامًا في مختبر التقنية

  • ps -ax | grep mysql
  • توقف عن أي عمليات MySQL واقتلها
  • sudo rm /usr/local/mysql
  • sudo rm -rf /usr/local/var/mysql
  • sudo rm -rf /usr/local/mysql*
  • sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  • sudo rm -rf /Library/StartupItems/MySQLCOM
  • sudo rm -rf /Library/PreferencePanes/My*
  • launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  • تحرير /etc/hostconfig وإزالة السطر MYSQLCOM=-YES-
  • rm -rf ~/Library/PreferencePanes/My*
  • sudo rm -rf /Library/Receipts/mysql*
  • sudo rm -rf /Library/Receipts/MySQL*
  • sudo rm -rf /private/var/db/receipts/*mysql*
  • حاول تشغيل mysql ، لا ينبغي أن تعمل

قم بتثبيت جهاز MySQL لكل مستخدم في حجرة الإعلانات من هذا الإصدار من

  • brew doctor وتحديد أي أخطاء
  • brew remove mysql
  • brew cleanup
  • brew update
  • brew install mysql
  • unset TMPDIR
  • mysql_install_db --verbose --user= whoami --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
  • mysql.server start
  • تشغيل الأوامر يقترح Brew ، إضافة MySQL إلى launchctl بحيث يتم تشغيله تلقائيًا عند بدء التشغيل

يجب أن تعمل الآن mysql وتشغيلها طوال الوقت كما هو متوقع

التوفيق.


كان لي نفس المشكلة بعد أن حاولت إعادة تشغيل الخلية.

أستخدم الاسمين المستعجلين التاليين في ملفي الشخصي

alias mysql-stop='launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist'
alias mysql-start='launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist' 

بعد إيقاف mysql ثم محاولة إعادة تشغيل واجهت المشكلة التي كنت تواجهها. نظرت في تحميل launchctl وكان الإبلاغ عن خطأ "لم يتم العثور على أي شيء".

بعد بحث سريع وجدت هذا ..

http://www.daveoncode.com/2013/02/01/solve-mac-osx-launchctl-nothing-found-to-load-error/

لذلك قمت بتحديث لي الاسم المستعار mysql-start النحو التالي

alias mysql-start='launchctl load -w -F ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist'

هذا حل مشكلتي التي قد تكون مفيدة بالنسبة لك.


معلومات المشروب

mysql: stable 5.6.12 (bottled)
http://dev.mysql.com/doc/refman/5.6/en/
Conflicts with: mariadb, mysql-cluster, percona-server
/usr/local/Cellar/mysql/5.6.12 (9363 files, 353M) *
  Poured from bottle
From: https://github.com/mxcl/homebrew/commits/master/Library/Formula/mysql.rb
==> Dependencies
Build: cmake
==> Options
--enable-debug
    Build with debug support
--enable-local-infile
    Build with local infile loading support
--enable-memcached
    Enable innodb-memcached support
--universal
    Build a universal binary
--with-archive-storage-engine
    Compile with the ARCHIVE storage engine enabled
--with-blackhole-storage-engine
    Compile with the BLACKHOLE storage engine enabled
--with-embedded
    Build the embedded server
--with-libedit
    Compile with editline wrapper instead of readline
--with-tests
    Build with unit tests
==> Caveats
A "/etc/my.cnf" from another install may interfere with a Homebrew-built
server starting up correctly.

To connect:
    mysql -uroot

To reload mysql after an upgrade:
    launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

mysql.service تبدأ

. ERROR! The server quit without updating PID file (/var/run/mysqld/mysqld.pid).

أو mysql -u الجذر

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

أنا أبحث عن حل لبعض الوقت ولكن لا أستطيع حل مشكلتي. حاولت عدة حلول في .com ولكن لا يساعدني ذلك.


واجهت نفس المشكلة الآن. إذا قمت brew info mysql الخطوات يبدو أن كلمة مرور الجذر يجب أن تكون new-password إذا كنت أتذكر بشكل صحيح. كنت أرى نفس الشيء الذي تشاهده. ساعدني هذا المقال أكثر.

اتضح لم يكن لدي أي حسابات تم إنشاؤها بالنسبة لي. عندما قمت بتسجيل الدخول بعد تشغيل mysqld_safe select * from user; لم يتم إرجاع أي صفوف. فتحت MySQLWorkbench مع mysqld_safe قيد التشغيل وأضفت حسابًا root مع جميع الامتيازات التي توقعتها. هذه تعمل بشكل جيد بالنسبة لي الآن.


TL، DR

قد لا يتم تشغيل خادم MySQL بعد التثبيت مع المشروب. جرب brew services start mysql mysql.server start brew services start mysql أو mysql.server start فقط إذا كنت لا تريد تشغيل MySQL كخدمة خلفية.

قصه كامله:

لقد قمت بتثبيت MySQL (مستقر) 5.7.17 على جهاز MacBook Pro جديد يعمل على Sierra وكذلك حصلنا على خطأ عند تشغيل mysql_secure_installation :

Securing the MySQL server deployment.

Enter password for user root: 
Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

يقول ما؟

وفقا لمعلومات التثبيت من المشروب ، يجب أن يدفع mysql_secure_installation إلى ... تأمين التثبيت. اعتقدت أن خادم MySQL ربما لا يكون قيد التشغيل وهذا صحيح. تشغيل brew services start mysql ثم عملت mysql_secure_installation مثل السحر.







mysql-error-1045