Nano Hash - криптовалюты, майнинг, программирование

Установлен MacPorts PHP, теперь не может взаимодействовать с MySQL - Mac OS X

У меня была стандартная версия PHP, которая идет в комплекте с Mac OS X, работала отлично, но я хотел перейти на новую версию, поэтому использовал MacPorts, и все прошло хорошо. Затем я отредактировал свой .conf файл и проверил, и теперь моя версия PHP обновлена ​​до последней версии.

Однако после запуска проекта PHP, над которым я работаю, теперь кажется, что я не могу взаимодействовать с MySQL, который работал со стандартной установкой PHP, поставляемой в комплекте с Mac OS X (примечание: изначально я установил MySQL из их установщика из их домашняя страница).

У меня такой вопрос: есть ли способ заставить MacPort PHP работать с моей старой установкой MySQL?

18.03.2011

Ответы:


1

Вы установили пакет php5-mysql с MacPorts?

Установка PHP по умолчанию в MacPorts относительно минимальна, но доступно множество дополнительных модулей.

18.03.2011
  • Запустите /opt/local/bin/php -i и посмотрите, перечислены ли в нем расширения mysql (и mysqli). 18.03.2011
  • Предупреждение PHP: запуск PHP: невозможно загрузить динамическую библиотеку './pdo_mysql.so' - dlopen (./ pdo_mysql.so, 9) 18.03.2011
  • Найдите этот файл в / opt / local / lib / php / extensions (и в подкаталогах) 18.03.2011
  • Привет, у меня есть: mysql.so - mysqli.so и pdo_mysql.so 19.03.2011

  • 2

    Как отметил Альнитак в комментариях, MacPorts 1.9.2 не имеет варианта mysql. Тем не менее, есть способ обойти это.

    Порт php5-mysql имеет вариант + mysql5, но есть еще лучший способ решить проблему.

    Это отличное сообщение в блоге http://top-frog.com/2009/08/26/macports-php5-mysql-mysqlnd/, в котором указывается только та же фраза, что и в сценарии после установки php5-mysql:

    To use mysqlnd with a local MySQL server, edit /opt/local/etc/php5/php.ini and set mysql.default_socket, mysqli.default_socket and pdo_mysql.default_socket to /opt/local/var/run/mysql5/mysqld.sock

    Поэтому, если вы используете собственный MySQL-сервер MacOS X Server, этот сокет будет легко получить, запустив ps ax | grep mysql. Для меня это было /var/mysql/mysql.sock.

    И вы, конечно, всегда можете изменить сокет в /etc/my.cnf

    14.04.2011

    3

    В момент безумия я решил это.

    PHP был удален с помощью MacPorts, затем переустановлен, но на этот раз добавлен + mysql к установке.

    Как только это будет сделано, установите php5-mysql также с помощью MacPorts. Тогда это сработало!

    19.03.2011
  • странно - моя установка MacPorts (v1.9.2) не имеет варианта PHP5 + mysql. 19.03.2011
  • Вы должны проверить мой комментарий, и все будет работать из коробки, без необходимости устанавливать варианты портов. 14.04.2011

  • 4

    Я также столкнулся с той же проблемой с установленными mysql и php5. К счастью, я могу исправить это, следуя совету Влады; немного по-другому. Обратите внимание, что порт php5-mysql НЕ ТРЕБУЕТСЯ

    Попробуйте /usr/bin/php -i|grep mysql|grep socket, в результате

    mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
    mysqli.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
    pdo_mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
    

    Обратите внимание, что php указывает не на то место; это должно быть /opt/local/var/run/mysql5/mysqld.sock

    Решение: Создайте символическую ссылку для правильного пути

    sudo mkdir /var/mysql
    sudo ln -s   /opt/local/var/run/mysql5/mysqld.sock  /var/mysql/mysql.sock
    
    22.03.2012
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..