PDA

View Full Version : سوال: ارتباط برنامه با mysql?????/



malihehshajari
دوشنبه 05 اسفند 1392, 09:00 صبح
سلام

من برای برنامم از دیتابیس sqlite استفاده میکردم مشکلی نداشتم ولی الان میخوام به mysql وصل کنم برنامه رو وقتی دستور :

python manage.py sqlall Dr

اجرا میکنم خطای زیر رو میده



OperationalError: (1045, "Access denied for user 'm'@'localhost' (using password: YES)")




میشه راهنمایی کنید
با تشکر

n.nowroozi
دوشنبه 05 اسفند 1392, 13:42 عصر
خب داره access denied میده تنظیمات رو توی setting اشتباه ست کردی احتمالا
تنظیمات رو بزار اینجا

malihehshajari
دوشنبه 05 اسفند 1392, 13:48 عصر
DATABASES = {
'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'MyDB',
'USER': 'm',
'PASSWORD': '123',
'HOST': '',
'PORT': '',
}
}

n.nowroozi
دوشنبه 05 اسفند 1392, 19:43 عصر
دستی میتونی با این یوزر پسوردت توی mysql لاگ این کنی؟

malihehshajari
یک شنبه 28 اردیبهشت 1393, 11:18 صبح
دستی میتونی با این یوزر پسوردت توی mysql لاگ این کنی؟

من مای اسکیو ال تا حالا کار نکردم
نصبش کردم از طریق کامند ولی نمیدونم کجا نصب شده و چجوری میتونم برم داخل محیطش اصلا :گریه:

malihehshajari
یک شنبه 28 اردیبهشت 1393, 11:54 صبح
من الان دیتابیسم رو ساختم با کد زیر توی ستینگ



DATABASES = {
'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'MyDB',
'USER': 'root',
'PASSWORD': '123',
'HOST': '',
'PORT': '',
}
}



حالا اگه بخوام مسیر رو خودم انتخاب کنم بهم اجازه نمیده در ضمن توی مسیری که ساخت دیتابیسم رو /var/lib/mysql بهم اجازه دسترسی نمیده

چرا ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

n.nowroozi
یک شنبه 28 اردیبهشت 1393, 11:56 صبح
mysql -u root -p

malihehshajari
یک شنبه 28 اردیبهشت 1393, 12:00 عصر
نه من میخوام برم خودم دستی بازش کنم دیتابیسم رو
مثل sqllite که میتونیم بریم ببینیم
و میخوام یک مسیر خودم بهش بدم وقتی داره ساخته میشه بره اونجا ساخته بشه :افسرده:

n.nowroozi
یک شنبه 28 اردیبهشت 1393, 12:05 عصر
این سرویسه فایل نیست که!!! باید مسیر سرویس رو بهش بدی

n.nowroozi
یک شنبه 28 اردیبهشت 1393, 12:10 عصر
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'DB_NAME',
'USER': 'DB_USER',
'PASSWORD': 'DB_PASSWORD',
'HOST': 'localhost', # Or an IP Address that your DB is hosted on
'PORT': '3306',
}
}

malihehshajari
یک شنبه 28 اردیبهشت 1393, 12:14 عصر
من الان ساختم دیتابیس مای اسکیو ال رو خب
ولی میخوام یک مسیر خودم بهش بدم بره اونجا ساخته بشه
این نمیشه ؟
برای اس کیو ال لایت مثلا مینویسم :
os.path.join(os.path.dirname(__file__), 'db/MyDB.db').replace('\\','/')
برای مای اسکیو ال نمیشه ؟
خب اگه نمیشه وقتی میخوام از برنامه وصل بشم به دیتابیس چه مسیری بدم ؟

n.nowroozi
یک شنبه 28 اردیبهشت 1393, 12:58 عصر
کار نشد نداره توی لینوکس ولی بحث اینه هست که واسه چی میخوای همچین حرکت انتحاری ای بزنی؟! localhost

n.nowroozi
یک شنبه 28 اردیبهشت 1393, 13:00 عصر
host رو بزن localhost وصل میشی دیگه این mysql رو از طریق یه پرت خاص میبینه

malihehshajari
چهارشنبه 31 اردیبهشت 1393, 11:08 صبح
من یدونه یوزر و پسورد جدید ایجاد کردم حالا نمیذاره دیتابیس بسازم با اون یوزر و پسورد
access denide میده چرا؟

n.nowroozi
چهارشنبه 31 اردیبهشت 1393, 12:56 عصر
دستی میتونی table بسازی یا نه؟
بعد اینکه تنظیمات settings جنگوت رو هم بزار

malihehshajari
چهارشنبه 31 اردیبهشت 1393, 13:31 عصر
من با دستور mysql -u project -p با اون یوزر پسورد لاگین کردم از طریق ترمینال
بعد دستور CREATE DATABASE MyDB CHARACTER SET utf8 رو که زدم خطا میده میگه دسترسی نداری

n.nowroozi
چهارشنبه 31 اردیبهشت 1393, 14:32 عصر
میشه کامل اونچیزی رو که از اول توی شل مینویسی با ارورش بزاری؟

malihehshajari
چهارشنبه 31 اردیبهشت 1393, 14:36 عصر
shajari@shajari-desktop:~$ mysql -u project_lab -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 44
Server version: 5.5.35-0ubuntu0.12.10.2 (Ubuntu)


Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.


Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.


Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


; mysql> CREATE DATABASE MyDB1 CHARACTER SET utf8


ERROR 1044 (42000): Access denied for user 'project_lab'@'localhost' to database 'MyDB1'
mysql>

n.nowroozi
چهارشنبه 31 اردیبهشت 1393, 15:51 عصر
مشکل از حق دسترسی اون یوزری هست که ساختی با root امتحان کن

malihehshajari
چهارشنبه 31 اردیبهشت 1393, 15:54 عصر
یا root کار میکنه با یوزر جدید کار نمیکنه میخوام یوزرم غیر روت باشه

n.nowroozi
پنج شنبه 01 خرداد 1393, 09:42 صبح
خب شما توی جنگو که نمیای دیتابیس نمیسازی، یه دیتابیس با یوزر root بساز بعد به این یوزر حق دسترسی بده واسه اون دیتابیس و با همین کار کن

این رو بخون به کارت میاد:

https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql

malihehshajari
شنبه 03 خرداد 1393, 09:59 صبح
خب شما توی جنگو که نمیای دیتابیس نمیسازی، یه دیتابیس با یوزر root بساز بعد به این یوزر حق دسترسی بده واسه اون دیتابیس و با همین کار کن

این رو بخون به کارت میاد:

https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql

من همه اینا رو قبلا انجام دادم ولی کلا خطای سطح دسترسی میده ممنون

n.nowroozi
شنبه 03 خرداد 1393, 12:14 عصر
این دیگه باید حلش کنه!
http://stackoverflow.com/a/1720254/1836709