2011-11-22 18 views
6

मैंने सब कुछ अलग से स्थापित किया है (अपाचे, PHP, MySQL और phpMyAdmin) और संकलन का उपयोग न करें, अब तक phpMyAdmin को छोड़कर सब कुछ ठीक काम करता है।phpMyAdmin - MySQL एक्सटेंशन गुम है

समस्या मैं का सामना कर रहा हूँ त्रुटि संदेश में कहा गया है कि "MySQL एक्सटेंशन गुम है", जैसे ही मुझे फोन करने की कोशिश, यह है:

स्थानीय होस्ट/phpmyadmin/index.php

और जब मैं

स्थानीय होस्ट/phpmyadmin/सेटअप फोन/index.php

मैं दो संदेश अगर यह माना जाता है कि जहां मैं नहीं जानता कि इस तरह होना चाहिए:

Bzip2 संपीड़न और डिकंप्रेशन के लिए फ़ंक्शन की आवश्यकता होती है (bzopen, bzcompress) जो इस सिस्टम पर अनुपलब्ध हैं।

और:

पिन विसंपीड़न कार्य (zip_open) जो इस सिस्टम पर उपलब्ध नहीं हैं की आवश्यकता है।

कोई सुझाव?

+0

यदि आप इसमें, mysql एक्सटेंशन लोड किया गया है? यदि नहीं, तो आपको इसे अपने php.ini –

उत्तर

8

पहले यह सुनिश्चित करें कि आपके पास MySQL इंस्टॉल हो गया है। आप यह जांचकर यह सुनिश्चित कर सकते हैं कि आप mysql कमांड प्रॉम्प्ट का उपयोग कर mysql तक पहुंच सकते हैं या नहीं। तो यदि आप mysql काम कर रहा है तो शायद यह लोड नहीं हो रहा है। इसके लिए नीचे दिए गए चरणों का पालन करें

सबसे पहले, आपको अपना php.ini ढूंढना होगा। यह कहीं भी हो सकता है, लेकिन यदि आप

<?php phpinfo(); ?> 

स्क्रिप्ट के साथ एक छोटे से php फ़ाइल बनाने यह आपको बता देंगे कि वह कहाँ है। बस लोड विन्यास फाइल के पथ को देखो। सामान्य स्थानों में/etc/apache /, /etc/php4/apache2/php.ini, /etc/php5/apache2/php.ini या Windows के लिए /usr/local/lib/php.ini भी शामिल हो सकता है सी: \ उपयोगकर्ता \ उपयोगकर्ता नाम \ PHP \ php.ini

अपने सर्वर की php.ini संपादित करें और निम्न पंक्ति देखें। लाइन की शुरुआत से ';' हटाएं और अपाचे को पुनरारंभ करें। चीजें अब ठीक काम करनी चाहिए!

;extension=mysql.so 

हो जाना चाहिए

extension=mysql.so 

खिड़कियों के लिए यह हो जाएगा

;extension=mysql.dll 

हो जाना चाहिए

extension=mysql.dll 
1

आपकी स्थापना में कुछ php मॉड्यूल गुम हैं, phpmyadmin readme में आवश्यक मॉड्यूल की एक सूची होनी चाहिए। यदि आपने हाल ही में मॉड्यूल सक्षम किए हैं, तो अपाचे सेवा/डिमन को पुनरारंभ करने का प्रयास करें।

संपादित करें: ऐसा लगता है कि दस्तावेज़ों में कोई भी "इन मॉड्यूल को सक्षम नहीं करता" है, इसलिए 0pया mysqli को अपने php.ini में सक्षम करें (आपको इसे पहले इंस्टॉल करने की आवश्यकता हो सकती है)।

यदि आप phpMyAdmin के भीतर संपीड़ित फ़ाइल अपलोड या डाउनलोड करने का इरादा नहीं रखते हैं तो दो संदेश महत्वपूर्ण नहीं हैं। यदि आप करते हैं, तो zlib और/या bz2 मॉड्यूल सक्षम करें।

3

कुछ लिनक्स वितरण स्थापित करने के लिए एक php_mysql और php_mysqli पैकेज है।

0

बस अपने php.ini फ़ाइल की जाँच करें, इस फ़ाइल अर्द्धविराम में (;)टिप्पणी के लिए इस्तेमाल कियायदि आप देखते हैं तो अर्धविराम हटा दें;

;extension=mysql.dll 

अब आप अपने एक्सटेंशन सक्षम है, लेकिन आप appache

extension=mysql.dll 
+1

में सक्रिय करने की आवश्यकता है, आप सभी के लिए बहुत बहुत धन्यवाद, लेकिन मुझे एक और चीज करना पड़ा और यही है, libmysql.dll को Windows System32 फ़ोल्डर में ले जाएं जैसा कि PHP मैनुअल में वर्णित है - इसे विंडोज पैथ में जोड़ने के लिए भी काम करना चाहिए, लेकिन वह सामान्य रूप से मेरे लिए काम नहीं करता है। – Carpet

3

जब mysql DLL, यानी लोड हो रहा है आप php आरं में पूरा पथ लगाने की जरूरत है फिर से शुरू करनी: -

विस्तार = c: /php54/ext/php_mbstring.dll
विस्तार = c: /php54/ext/php_mysql.dll

फिर आपको उन्हें विंडोज फ़ोल्डर में स्थानांतरित करने की आवश्यकता नहीं है।

+0

यदि आपने "extension_dir" सेट नहीं किया है तो आपको केवल प्रत्येक एक्सटेंशन के लिए पथ जोड़ना होगा। प्रत्येक एक्सटेंशन में पथ जोड़ने से "extension_dir" सेट करना बहुत आसान है। पूर्व: extension_dir = "सी:/php/ext" – ironarm

1

मेरे मामले में मैं विस्तार स्थापित करना था:

yum install php php-mysql httpd 

और फिर अपाचे पुनः आरंभ:

service httpd restart 

कि समस्या हल हो।

2

बस के रूप में दूसरों को कहा गया है कि आप ';' से हटाने की जरूरत: mysql और mysqli एक्सटेंशन को सक्षम करने अपने php.ini में
;extension=php_mysql.dll और
;extension=php_mysqli.dll

। लेकिन सभी का सबसे महत्वपूर्ण, आपको अपनी एक्सटेंशन निर्देशिका को इंगित करने के लिए 0pको अपने php.ini में सेट करना चाहिए। अधिकांश समय डिफ़ॉल्ट "ext" है। आपको इसे एक्सटेंशन फ़ोल्डर में पूर्ण पथ में बदलना चाहिए। यानी यदि आपके पास ड्राइव सी पर आपका xampp स्थापित है, तो C:/xampp/php/ext ext फ़ोल्डर के लिए पूर्ण पथ है, और यह एक आकर्षण की तरह काम करना चाहिए!

3

मैं सिर्फ जोड़ने

apt-get install php5-mysqlnd 

यह "PHP5-mysql" से mysql.so अधिलेखित करने के लिए कहेगा।

यह मेरे लिए यह काम है।

0

स्थापित कर रहा है bzip2 और zip पीएचपी एक्सटेंशन उबंटू से मेरी समस्या का हल:

sudo apt-get install php7.0-bz2 
sudo apt-get install php7.0-zip 

उपयोग php(you version)-(extension) स्थापित करने और है कि phpmyadmin रीडमी में आवश्यक है किसी भी लापता मॉड्यूल सक्षम करने के लिए।

0

मुझे एक समान समस्या थी, लेकिन यह मेरे php.ini में एक्सटेंशन = mysql.so जोड़ने में मदद नहीं करता था। यह पता चला कि mysql.so फ़ाइल मेरे एक्सटेंशन फ़ोल्डर में नहीं थी और न ही मेरी मशीन पर कहीं और। इसे php स्रोत डाउनलोड करके और एक्सटेंशन को मैन्युअल रूप से बिल्ड करके और फिर इसे एक्सटेंशन फ़ोल्डर में कॉपी करके हल किया गया।