توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : دسترسی به دیتابیس روی vps از یک هاست دیگه
raminr63
August 31st, 2012, 18:52
با سلام
بچه ها من روی windows server 2003 دیتابیس دارم (از برنامه Xamp استفاده میکنم) و یک سایت راه اندازی کردم.
حالا یه اسکریپتی دارم که میخوام یکجای دیگه (روی یه هاست دیگه ) راه اندازی کنم اما نیازه که از دیتابیسی که روی windows server 2003 یا همون vps ساختم استفاده کنم.
سوالم من اینه که چطوری میتونم از یک هاست دیگه به دیتابیس vps دسترسی پیدا کنم و اون رو فعال کنم تا بتونم از اون دیتابیس تو اسکریپتم استفاده کنم.
ممنون
dude
August 31st, 2012, 19:04
در حالت کلی اتصال از یک اسکریپت به یک دیتابیس رو سرور دیگر دو قسمت دارد:
۱. باید در کانفیگ اسکریپت تان به جای localhost مسیر آی پی سرور مقصد و نام دیتابیس در سرور مقصد را بدهید.
۲. در سرور مقصد (جایی که دیتابیس تان قرار دارد) باید یوزر و پسورد ادمین اسکریپ تان و مجوز لازم را تعریف کنید مثلا این طور:
GRANT ALL ON yourdb.* TO 'remoteuser'@'localhost' IDENTIFIED BY 'somepass';
FLUSH PRIVILEGES;
quit;
البته باید مطمئن باشید که پورت 3306 (پیشفرض mysql ) روی هر دو هاست باز باشد و دیتابیس به لوکال هاست بیند نشده باشد. یعنی اگر در کانفیگ mysql تان داشته باشید
bind-address=127.0.0.1
نمی توانید از خارج به دیتابیس کانکت کنید
برای کانکت شدن به دیتابیس دوردست روی ویندوز می توانید مطابق این راهنمایی (http://dev.mysql.com/doc/refman/5.0/en/windows-and-ssh.html) عمل کنید.
raminr63
August 31st, 2012, 19:41
ممنون
گزینه اولی که اوکی هستش
و فایل کانفیق هم چک کردم دیتابیس بیند نشده.
فقط مونده اینکه من این دستور رو کجا بزنم ؟
GRANT ALL ON yourdb.* TO 'remoteuser'@'localhost' IDENTIFIED BY 'somepass'; FLUSH PRIVILEGES; quit;
ودیگه اینکه اینیکه گذاشتین یعنی این:
yourdb یعنی دیتابیس که من روی vps دارم و میخوام بهش کانکت بشم؟!
remoteuser یعنی یوز ریموت ویندوز که اکثرا هم administrator هستش؟!
localhost این هم میشه همون ایپی vps بجای لوکال؟!!
somepass یعنی میشه همون پسورد دیتابیس تو ویندوز؟!