خطاهای دیتابیس

خطاهای رایج هنگام ارتباط با دیتابیس

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

– Sql هنوز اجرا نشده و یا به طور صحیح عمل نمی کند.

– مسیر شبکه بین سرویس گیرنده (کامپیوتر شما) و سرویس دهنده (سرور) شکسته و یا موقتا کار نمی کند.

– اکانت کاربری استفاده شده جهت اتصال به دیتابیس دارای مجوزهای دسترسی نمی باشد.

برای رفع مورد اول SQL query analyzer را در سرور اجرا کنید.

اگر با خطای connection times out مواجه شدید، بدین معنی است که sql server دچار مشکل شده و یا در حدی مشغول است که توانایی پردازش request ها را ندارد.برای تشخیص busy بودن آن کافی است با فشردن سه کلید Alt+Ctrl+Del اقدام به باز کردن taskmanager نموده و میزان cpu usage را مشاهده نمایید.

برای رفع مورد دوم از منوی start گزینه run و سپس فرمان CMD را اجرا نمایید. در محیط command prompt دستور زیر را اجرا نمایید :

C:> telnet [severname] 1433

تا مطمئن شوید که Sql سرور روی پورت TCP ، شنود می کند. اگر ارتباط با پورت با موفقیت انجام شد مکان نما شروع به چشمک زدن کرده و صفحه command prompt پاک می شود در غیر اینصورت خطایی نمایش داده خواهد شد.عمده دلیل بسته بودن پورت مشکلات DNS می باشد که در این رابطه می توانید با مدیر شبکه مشاوره نمایید. همچنین تنظیمات Firewall هم می تواند باعث بسته شدن پورت TCP شده باشد.

برخی اوقات به دلیل مشکلات indexing بر روی دیتابیس و با توجه به اینکه دیتابیس آنلاین بوده و کاربران زیادی از آن استفاده نموده ، با ارسال queries های فراوان بر کارایی آن تاثیر می گذارند و سرور توانایی مدیریت درخواست ها را نخواهد داشت. راه حل مناسب در این حالت pause کردن sql است تا بتواند قبل از دریافت هرگونه درخواست جدیدی کارهای قبلی را به اتمام برساند.لازم است بدانید connectionها و سایر فرآیندها به کار خود ادامه خواهند داد اما Sql server هیچ گونه connection جدیدی را پذیرش نمی کند. با pause کردن sql میزان مصرف cpu کاهش پیدا می کند.

بعد از اتصال به سرور مجددا sql را در حالت pause قرار دهید در این حالت sql آماده ی دریافت کار جدید خواهد بود.

پیشگام رایانه با تجربه ای چندساله و تکیه بر دانش و کادر فنی خود آماده ی ارائه خدمات شبکه شامل پشتیبانی شبکه , نصب و راه اندازی شبکه , طراحی شبکه ، خدمات پسیو شبکه , فروش تجهیزات شبکه ,سرور و مجازی سازی , نصب و راه اندازی ویپ به شما هموطنان می باشد.

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

ORA-12154: TNS:could not resolve the connect identifier specified

این یکی از خطاهای رایج در اوراکل سرور می باشد که به معنی عدم امکان برقراری ارتباط با سرور است. دلیل اصلی آن ایراد در تعاریف اتصال به سرور بوده، که در نتیجه اوراکل نمیتواند نام سرویس و آدرس های موجود را بفهمد .

جهت رفع این مشکل باید تعاریف مربوط به برقراری ارتباط در فایل tnsname.ora و کلمات و پرانتزهای موجود (به طور کلی syntax ها) چک شوند. همچنین آدرس و پورت های اتصال به سرور باید به صورت درست تعریف شده باشند.از دلایل دیگر بوجود آمدن این مشکل عدم دسترسی صحیح به فایل فوق میباشد.

[ORA-00600: internal error code, arguments: [%s], [%s],[%s], [%s], [%s]

این error از جمله مشکلاتی است که ممکن است زیاد دیده شود و معمولا بصورت دوره ای تکرار میشود . جهت رفع این مشکل بهترین روش مراجعه به فایل alert.log در سرور اوراکل و پیدا کردن نقطه خطا در آن است.

خطاهای رایج هنگام ارتباط با دیتابیس

ORA-1722: Invalid Number

یکی دیگر از خطاهای رایج هنگام ارتباط با دیتابیس این خطا است که عمدتا به دلیل مشکل در پردازش یک رشته عددی به جای یک فیلد عددی بوجود می آید.

یکی از مشکلات رایج در مورد فیلدهایی است که نوع آنها varchar بوده و در آن به جای عدد، رشته اعداد وارد میشوند، به عنوان مثال در فیلد مربوطه به جای عدد ‘۲’ به اشتباه ‘two’ نوشته میشود; بدیهی است procedure هایی که با تعریف عددی کار میکنند قادر به تبدیل این مقادیر نمی باشند.

بهترین روش جهت رفع این مشکل استفاده از فیلدهای عددی برای اینگونه مقادیر است.

ORA-03113: end-of-file on communication channel
خطای فوق عمدتا به دلیل مدت زمان زیاد اتصال کلاینت به سرور اوراکل و عدم صحبت کردن با هم ایجاد میشود.

از جمله اتفاقاتی که باعث بروز این مشکل میشود می توان به موارد ذیل اشاره کرد:

از کار افتادن لحظه ای سرور
قطع شدن کابل شبکه
پروسه مربوطه در لایه OS پایین رفته است
log ویندوز پر شده است
یا در سرور اوراکل یک خطای داخلی وجود دارد

بهترین کار جهت رفع این مشکل چک کردن تمام جوانب حتی ساده و البته بررسی log های سیستم می باشد.

انجام کارهای زیر تا حد زیادی از بروز خطاهای رایج هنگام ارتباط با دیتابیس جلوگیری به عمل می آورد :

استفاده از آخرین نسخه ی sql server ، یکسان بودن پروتکل شبکه بین کامپیوتر شما و سرور ، مثلا اگر client از پروتکل ipx/spx برای اتصال به دیتابیس استفاده می کند این پروتکل بر روی سرور هم نصب شده باشد در غیر اینصورت قادر به برقراری ارتباط نخواهد بود.

در ادامه خطاهای رایج هنگام اتصال به دیتابیس آورده شده است :

خطای Specified SQL Server not found :

برای رفع این خطا ، مطمئن شوید نامی را که در قسمت sql servername وارد کرده اید درست بوده

و سرویس sqlserver که به آن متصل شده اید در حالت start قرار داشته باشد

و همچنین بررسی کنید که client و server از net –library یکسانی استفاده می کنند.

عدم لاگین با سایر کاربران دیتابیس:

مطمئن شوید که گزینه ی single user در حالت Off قرار داشته باشد.

اگر این گزینه فعال باشد فقط یک کاربر می تواند به دیتابیس لاگین کند.

همچنین بررسی کنید کاربری که از طریق آن لاگین کرده اید در دیتابیس موجود و مجوزهای لازم را داشته باشد.

فعال بودن گزینه ی DBO use only :

اگر خطایی مبنی بر اینکه تنها مالک دیتابیس می تواند به آن دسترسی داشته باشد را دریافت کردید

بدین معنی است که گزینه ی ‘DBO use only’ در وضعیت فعال قرار دارد

بنابراین اگر می خواهید سایر کاربران هم به دیتابیس دسترسی داشته باشند آن را درحالت Off قرار دهید.

خطای Assertion failed هنگام اتصال به دیتابیس

اگر هنگام اتصال به sql server از طریق tcp /ip خطایی مانند Assertion failed را دریافت کردید اقدام به نصب Client for Microsoft Networks بر روی سرور نمایید.

نمایش خطای Specified SQL Server not found در زمان اجرای برنامه:

این پیام هنگام لودشدن فایل mdf سنگین ظاهر می شود.

در این حالت قبل از اجرای کامل sql server، سرویس connection ایجاد شده و باعث بروز خطا می شود.

اگر هنگام اتصال به sql server از طریق QUERY ANALYZER با این خطا مواجه شدید در زمانهای دیگری اقدام به اتصال به sql نموده و یا SQL SERVER را از طریق Service manager دوباره اجرا کنید.

شرکت پیشگام رایانه ارائه دهنده خدمات شبکه شامل پشتیبانی شبکه , نصب و راه اندازی شبکه , طراحی شبکه ، خدمات پسیو شبکه, فروش تجهیزات شبکه ,سرور و مجازی سازی , نصب و راه اندازی ویپ

برچسب ها:, ,

دیدگاهتان را بنویسید

ارتباط با ما

تهران، میدان فاطمی، میدان گلها، ابتدای بلوار گلها، پلاک 8، طبقه 6، واحد 11 و 12

تلفن : 1000 5780 – 021

فکس : 57801000 – 021  داخلی صفر

کدپستی : 1413873455

درخواست مشاوره

  • This field is for validation purposes and should be left unchanged.