यह मैक ओएस एक्स के लिए है Apache HTTP की मूल स्थापना और MySQL के कस्टम इंस्टॉलेशन के साथ के लिए है ।
इसका उत्तर @ alec-gorge की उत्कृष्ट प्रतिक्रिया पर आधारित है, लेकिन चूंकि मुझे अपने कॉन्फ़िगरेशन में कॉन्फ़िगर करने के लिए कुछ विशिष्ट परिवर्तनों को Google को करना पड़ा, ज्यादातर मैक ओएस एक्स-विशिष्ट, मैंने सोचा कि मैं इसे पूर्णता के लिए यहां जोड़ूंगा।
Apache HTTP के लिए PHP5 समर्थन सक्षम करें
सुनिश्चित करें कि PHP5 समर्थन सक्षम है /etc/apache2/httpd.conf
।
Php5_module मॉड्यूल को लोड करने के लिए लाइन के साथ फाइल को एडिट करें sudo vi /etc/apache2/httpd.conf
(पासवर्ड दर्ज करें जब पूछा जाए) और अनकम्प्लिमेंट ( ;
शुरुआत से हटाएं ) ।
LoadModule php5_module libexec/apache2/libphp5.so
अपाचे HTTP के साथ शुरू करें sudo apachectl start
(या restart
यदि यह पहले से ही शुरू हो गया है और कॉन्फ़िगरेशन फ़ाइल को फिर से पढ़ने के लिए पुनरारंभ करने की आवश्यकता है)।
सुनिश्चित करें कि /var/log/apache2/error_log
जिसमें एक पंक्ति है जो आपको बताती है कि php5_module सक्षम है - आपको देखना चाहिए PHP/5.3.15
(या समान)।
[notice] Apache/2.2.22 (Unix) DAV/2 PHP/5.3.15 with Suhosin-Patch configured -- resuming normal operations
सॉकेट फ़ाइल का नाम देख रहा है
जब MySQL ऊपर और चल रहा है (साथ) ./bin/mysqld_safe
) कंसोल के बाहर प्रिंट की गई डिबग लाइनें होनी चाहिए जो आपको बताती हैं कि आप लॉग फाइल कहां पा सकते हैं। फ़ाइल नाम में होस्टनाम नोट करें - localhost
मेरे मामले में - जो आपके कॉन्फ़िगरेशन के लिए भिन्न हो सकता है।
इसके बाद आने वाली फाइल Logging to
महत्वपूर्ण है। यहीं से MySQL अपना काम करता है।
130309 12:17:59 mysqld_safe Logging to '/Users/jacek/apps/mysql/data/localhost.err'.
130309 12:17:59 mysqld_safe Starting mysqld daemon with databases from /Users/jacek/apps/mysql/data
localhost.err
फ़ाइल खोलें (फिर, आपका नाम अलग तरह से हो सकता है), यानी tail -1 /Users/jacek/apps/mysql/data/localhost.err
सॉकेट फ़ाइल का नाम जानने के लिए - यह अंतिम पंक्ति होनी चाहिए।
$ tail -1 /Users/jacek/apps/mysql/data/localhost.err
Version: '5.5.27' socket: '/tmp/mysql.sock' port: 3306 MySQL Community Server (GPL)
socket:
भाग पर ध्यान दें - वह सॉकेट फ़ाइल है जिसका आपको उपयोग करना चाहिएphp.ini
।
MySQL और लॉग इन करके सॉकेट के फ़ाइल नाम के स्थान को निर्धारित करने के लिए एक और तरीका (कुछ आसान तरीका है) कहते हैं:
show variables like '%socket%';
MySQL के समर्थन से PHP5 को कॉन्फ़िगर करना - /etc/php.ini
Php.ini की बात ...
में /etc
निर्देशिका वहाँ /etc/php.ini.default फ़ाइल। इसे /etc/php.ini पर कॉपी करें ।
sudo cp /etc/php.ini.default /etc/php.ini
खोलें /etc/php.ini
और mysql.default_socket देखें ।
sudo vi /etc/php.ini
का डिफ़ॉल्ट mysql.default_socket
है /var/mysql/mysql.sock
। आपको इसे उस मूल्य में बदलना चाहिए जो आपने पहले नोट किया है - यह था/tmp/mysql.sock
मेरे मामले में ।
/etc/php.ini
सॉकेट फ़ाइल के नाम को दर्शाने के लिए फ़ाइल बदलें :
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
अंतिम सत्यापन
Apache HTTP को पुनरारंभ करें।
sudo apachectl restart
PHP5 से संबंधित कोई त्रुटि नहीं होने पर लॉग की जाँच करें। कोई त्रुटि का मतलब नहीं है कि आप कर रहे हैं और MySQL के साथ PHP5 ठीक काम करना चाहिए। बधाई!
/etc/init.d/mysql start
यदि आप डेबियन बेस डिस्ट्रो पर हैं तो कृपया इसका आउटपुट पेस्ट करें । यदि विफल हो, तो/etc/my.cnf
सही mysql सॉकेट फ़ाइल पथ के लिए फ़ाइल की जाँच करें ।