2010-07-21 7 views
7

के माध्यम से XAMPP mysql तक पहुंचने से मैं अतीत में स्क्लाइट के साथ काम करने के बाद mysql का उपयोग करने का प्रयास कर रहा हूं।पायथन

मैंने XuxPP को linux (ubuntu) पर स्थापित किया है और mysql अप और ठीक चल रहा है (ऐसा लगता है कि phpMyadmin कम से कम)। हालांकि, मुझे MySQLdb (पायथन lib) काम करने में परेशानी हो रही है {apt का उपयोग करके इसे इंस्टॉल किया गया}। सटीक होना करने के लिए:

>>> import MySQLdb 
>>> db = MySQLdb.connect(host="localhost",db="opfine") 
Traceback (most recent call last): 
    File "<input>", line 1, in <module> 
    File "/usr/lib/pymodules/python2.6/MySQLdb/__init__.py", line 81, in Connect 
    return Connection(*args, **kwargs) 
    File "/usr/lib/pymodules/python2.6/MySQLdb/connections.py", line 170, in __init_ 
_ 
    super(Connection, self).__init__(*args, **kwargs2) 
OperationalError: (2002, "Can't connect to local MySQL server through socket '/var 
/run/mysqld/mysqld.sock' (2)") 

मेरा अनुमान है कि:

Can't connect to local MySQL server through socket '/var 
    /run/mysqld/mysqld.sock 

अपने स्थानीय स्थापना के कुछ प्रकार की उम्मीद कर (यानी XAMPP के भीतर नहीं) का अर्थ है, लेकिन मैं यह पता लगाने नहीं कर सकते इस modding के बारे में जाने के लिए कैसे इसे mysql के xampp स्वाद के साथ काम करने के लिए।

बहुत सराहना की मदद!

उत्तर

5

रिकॉर्ड के लिए (और Igancio से एक सूचक करने के लिए धन्यवाद), मैंने पाया कि नीचे काम करता है (भयानक मैं इस के पहले फ्लॉप लगता है): का उपयोग कर

db=MySQLdb.connect(user="root",passwd="",db="my_db",unix_socket="/opt/lampp/var/mysql/mysql.sock") 
1

इसका मतलब है कि आपने MySQL सर्वर शुरू नहीं किया है, या यह डोमेन सॉकेट का उपयोग न करने के लिए कॉन्फ़िगर किया गया है।

0

एक ही मुद्दा है और अपने एसक्यूएल के लिए देखो विन्यास फाइल my.cnf।

mysql://read:[email protected]/phonehome?unix_socket=/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock 

मेरे मामले में:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://read:[email protected]/phonehome?unix_socket=/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock' 
पैरामीटर के रूप में

# The following options will be passed to all MySQL clients 
[client] 
#password = your_password 
port  = 3306 
socket  = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock 

और उपयोग सॉकेट