تبلیغات
قطره (ای از زندگی یک درگیر کامپیوتر)
 
اگر قادر نیستی خود را بالا ببری ،همانند سیب باش تا با افتادنت اندیشه ای بالا برود.

ORA-65096: invalid common user or role name

نوشته شده توسط :سعید كلانتری
شنبه 11 آذر 1396-05:09 ب.ظ

در اراکل 12 اگه بخواهید به سادگی یک یوزر بسازید مانند اراکل 11. به مشکل می خورید و اررور بالا را می گیرید
مثلا اگه بخواهید با دستور
 create user saeed identified by saeed ;

یک ارور

ORA-65096: invalid common user or role name
  دریافت می کنید که این ظاهرا بخاطر قابلیتهای اراکل 12 است که می گوید دیتابیس پلاگین می توانید داسته باشید( دقیق نمی دونمی یعنی چی)
خلاصه برای حل مشکل از دستور زیر استفاده کنید

 alter session set "_ORACLE_SCRIPT"=true;



تبدیل shell script به فایل اجرایی

نوشته شده توسط :سعید كلانتری
چهارشنبه 3 آبان 1396-07:19 ب.ظ

یکی از بهترین روشها استفاده از برنامه shc  با سوئیچهای -v  و -f است.
بصورت
shc -v -f script.sh





نکاتی در شل نویسی لینوکس

نوشته شده توسط :سعید كلانتری
چهارشنبه 3 آبان 1396-06:51 ب.ظ

می توانید با دستور
read answer
 یک متغیر را از ورودی بگیرید. قطعا تعداد بیشتر هم می توانید. بعد از دریافت با استفاده از $answer می توانید از ان استفاده کنید ( $ اول اسم متغیر باید باشد )

از حلقه case  و دستورات exit و حلقه loop غیره می توانید به راحتی استفاده کنید. برنامه نویسی در ان شبیه برنامه نویسی پایتون است.
به فاصله خطوط هم باید دقت کنید.

بسیار ساده و خوب و بامزه است


اتصال به دیتابیس اراکل در سی شارپ

نوشته شده توسط :سعید كلانتری
دوشنبه 1 آبان 1396-05:32 ب.ظ

یکی از کارهای سختی که بالاخره شد( شاید خیلی هم سخت نباشه ولی برای من سخت بود) همین اتصال به اراکل با سی شارپ بود
البته هنوز همه اتفاقهای خوب نیفتاده و اول راهم
ولی خوب تجربیاتم و مشکلات و راه حلها رو  خلاصه می نویسم ،انشالله به درد بخوره

اولین مشکل tns بود که با بدختی درست شد. شاید بدون tns هم بشه که قطعا می شه و لی در هرصورت من اراکل کلاینت نصب کردم. و بعد tns اش را کانفیگ کردم که راستش اونقدر پیچیده شد که نفهمیدم چی شد. پس از اون بگذریم. انشالله بعدا بهش اشاره می کنم.

ولی بعد با ارور زیر مواجه شدم:

ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

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

alter user sys identified by password

پسوردش را عوض کردم.

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

 show parameter O7_DICTIONARY_ACCESSIBILITY

( دستور فوق را باید در شل sqlplus بزنید )
من با دستور alter system set o7_dictionary_accessibility=true scope=spfile ;
تغییرش دادم.
شاید اگه یه بار دیتابیس را استوپ و استارت می کردم درست می شد ولی من سیستم رو ریست کردم.

بعد که سیستم امد بالا دوباره لاگین کردم. این دفع وقتی دستور دیدن پارامتر رو زدم دیدم چیزی وجود نداره. دستور
startup
زدم که دیتابیس بیاد بالا
که امد
بعد دوباره زدم و دیدم مقدار پارامتر true شده. لذا سعی کردم وصل بشم. دیدم اررور زیر رو می ده:

ORA-12541: TNS:no listener

لذا دوباره به سیستم وصل شدم. با یوزر اراکل  (                   su - oracle  )

سپس دستور  lsnrctl status  را وارد می کنیم. بدیهی است که فعال نیست

لذا با دستور    lsnrctl start
انرا فعال کرده و به ان وصل می شویم.

برای همین نتایج ساده بالا من دوساعت اسیر بودم




لاگین به دیتابیس با shelll

نوشته شده توسط :سعید كلانتری
دوشنبه 1 آبان 1396-09:40 ق.ظ

سلام
فرض کنید می خواهید با استفاده از shell و putty به یک دیتابیس اراکل ( oracle )  لاگین کنید. از کامند زیر می توانید استفاده کنید

sqlplus  user/userpass@dbsid

لازم به ذکر است که dbsid اسمی است که در tnsnames.ora بر روی ماشینی که داری ازش وصل میشی نوشته شده  و بر مبنی ان مشخص می  گردد


نصب پایتون روی لینوکس

نوشته شده توسط :سعید كلانتری
چهارشنبه 26 مهر 1396-06:38 ب.ظ

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

https://www.digitalocean.com/community/tutorials/how-to-set-up-python-2-7-6-and-3-3-3-on-centos-6-4



ادامه مطلب

record is locked by another user oracle

نوشته شده توسط :سعید كلانتری
شنبه 4 شهریور 1396-05:22 ب.ظ

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

لذا برای اینکه بفهمید اطلاعات بیشتری بدست بیاورید پیشنهاد من استفاده از query زیر است

select
   c.owner,
   c.object_name,
   c.object_type,
   b.sid,
   b.serial#,
   b.status,
   b.osuser,
   b.machine
from
   v$locked_object a ,
   v$session b,
   dba_objects c
where
   b.sid = a.session_id
and
   a.object_id = c.object_id;

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

ALTER SYSTEM KILL SESSION 'sid,serial#';


در صورتیکه اینجا به شما ارور دسترسی داد باید به سرور فوق با دسترسی root لاگین کنید سپس su - oracle بنمایید
وو سپس با دستورات sqlplus  / as sysdba
 وارد محیط کامند اراکل بشوید و سپس کامند بالا را دوباره اجرا کنید.

موفق باشید



mount کردن ایزو

نوشته شده توسط :سعید كلانتری
پنجشنبه 19 مرداد 1396-03:26 ب.ظ

در صورت دریافت ارور
“mount: you must specify the filesystem type”

در موقع mount  کردن ایزو فایل یا سی دی درایو از کامند زیر استفاده کنید

 mount -t iso9660 /dev/sr0 /centos



برای تشخیص نسخه توزیع لینوکس و ورژن

نوشته شده توسط :سعید كلانتری
پنجشنبه 19 مرداد 1396-03:00 ب.ظ

ممکن است نیاز داشته باشید که نوع یا نسخه سیستم عامل لینوکس خود را بدانید , برای مثال زمانی که به سرور مجازی با ssh متصل هستید تنها راه فهمیدن این موضوع از طریق دستورات زیر می باشد :

برای تشخیص نسخه توزیع لینوکس و ورژن :

cat /etc/issue

برای تشخیص کرنل و نوع معماری :

uname -a



اضافه کردن دی وی دی CentOS به عنوان مخزن برای نصب بسته ها

نوشته شده توسط :سعید كلانتری
چهارشنبه 18 مرداد 1396-05:59 ب.ظ


همان طور که می دانید دستور yum برای نصب بسته های نرم افزاری مورد استفاده قرار می گیرد این دستور از مخازن معرفی شده در سیستم به عنوان محلی برای یافتن بسته ها استفاده می کند برای اضافه کردن دی وی دی CentOS به عنوان یک مخزن ابتدا یک دایرکتوری ساخته و دی وی دی CentOS را به آن Mount کنید.

مراحل اضافه کردن دی وی دی CentOS

برای این منظور از دستورات زیر به ترتیب استفاده کنید

[root@centos ~]# mkdir /centos
 
[root@centos ~]# mount /dev/cdrom /centos
 
mount: /dev/sr0 is write-protected, mounting read-only

ادامه مطلب

15 ترفند از دستور sed برای تسک های مدیریتی روزانه در Linux

نوشته شده توسط :سعید كلانتری
چهارشنبه 18 مرداد 1396-05:57 ب.ظ

مطلب خوبی بود

1 - نمایش خطوطی از یک داکیومنت


ابزاری مانند head و tail به ما امکان نمایش بالا و پایین یک فایل را میدهند اما اگر ما بخواهیم بخشی در وسط یک فایل را ببینیم باید از چه استفاده کنیم ؟ دستور زیر برای ما خط های 5 تا 10 از فایل myfile.txt برا میگرداند.

کد PHP:
# sed -n '5,10p' myfile.txt 
توصیه میشود این مقاله خوانده شود : http://linux-zone.org/forums/thread1904.html

ادامه مطلب

جستجوی متن در عبارت

نوشته شده توسط :سعید كلانتری
دوشنبه 16 مرداد 1396-01:14 ب.ظ

pid یعنی پروسس ای دی. هر برنامه ای در لینوکس با یه پروسس ای دی کار می کنه. برای از کار انداختنش باید یه دستور kill -9  قبلش زد


مثلا اگه یه pid داریم به  شماره 1234 با دستور   kill -9 1234  اون پروسس رو از کار می اندازیم.

حالا فرض کن یه برنامه داریم که حدودا می دونیم با چه اسمی می اد ولی نمی دونیم شماره پردازشش چیه. چزوری می شه فهمید؟

خوب اول می ریم با  دستور ps -A لیست کل پردازشها رو می بینیم بعد با grep کردن پروسس ای دی اش را در می اوریم

مثلا داریم

ps -A | grep 'saeed
حالا اگه بخواهیم دقیق تر و ریز تر بشویم می توانیم از کامند sed و cut استفاده کنیم که کاربرد های خوبی دارد

cut برای بریدن یک زیر رشته از رشته کاربرد دارد

مثلا ps -A | grep 'saeed' | cut -c2-6

یعنی از خروجی grep از کارکتر دوم تا 6 را ببر و جدا کن مثلا اگر خروجی grep برابر عبارت  
1234 saeed   888888
باشد خروجی برابر 234 s خواهد بود.( یه خورده تو این ادیتور میهن بلاگ بهم می ریزه. امیدوارم متوجه بشید)

از اون باحال تر دستور sed است. با دستور sed می توانید یک رشته را در رشته دیگر جستجو کنید و یا در خروجی تغییرات ایجاد کنید. دستور sed راباید بخونید. یه متن خوب براش می زارم توی ادامه مطلب. ولی مثلا باید حتما با یک کوتیشن و یک s شروع شود و به جاهای خوب برسید. از  regular expersion هم می تونید استفاده کنید.
من می خواستم توی رشته ام در صورتیکه به عدد خورد بین ان و قسمت بعدی فاصله بیندازد. و بعدش هم می خواستم در صورتیکه حرف توش نبود از ان استفاده کند. لذا کامند های زیر را زدم
راستی با کامند Echo ``  انرا فرستادم توی فایل. خیلی حال داد.

echo kill -9 ` ps -A | gerp 'saeed' | sed 's/[0-9]*/&            /'  | cut -c1-8 | sed 's_[^0-9]_ _g'` > /tmp/killer.sh

لازم به ذکر است که در دستور Sed می توان از / یا _  و یا : و غیره بعنوان جدا کننده استفاده کرد.


همین

منابع:

https://alvinalexander.com/linux-unix/linux-cut-command-cut-fields-columns-examples
http://wiki.linuxreview.ir/Shell-scripting-tutorial/chapter17





ادامه مطلب

use of unassigned local variable

نوشته شده توسط :سعید كلانتری
پنجشنبه 5 مرداد 1396-02:22 ب.ظ

امروز داشتم برنامه می نوشتم و میخوایتم یه متغیر string  رو به یه تابع پاس بدم که اونم متغیر  string می خواست.
ارور use of unassigned local variable    می داد. خیلی عجیب بود . همه چی به نظر درست بود. ولی نمی فهمیدم منظورش چیه.

اخرش فهمیدم باید زمانیکه تعریف می کنم متغیر رو یهع مقداری بهش بدم. تا به ارور نخوره


زیر رشته در رشته در زبان سی شارپ

نوشته شده توسط :سعید كلانتری
پنجشنبه 5 مرداد 1396-11:34 ق.ظ

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

ولی علی الحساب اینو داشته باشید:
برا یپیدا کردن یک رشته در یک رشته دیکه در  سی شارپ من از متود indexof  استفاده کردم. شاید روشهای بهتری هم باشد


رشته ها در زبان سی شارپ #C :

متد CopyTo : تعدادی کاراکتر را از مکان مشخص از یک رشته را در مکان خاص یک آرایه کاراکتری کپی میکند. بعنوان مثال دستورات زیر را ببینید:

string s1;

char[] charArray;

s1= "hello there";

s1.CopyTo (0,charArray,0,5);

متد CopyTo محتویات رشته s1 را در آرایه charArray کپی میکند. مکان شروع کپی در آرایه 0 و تعداد کاراکترهایی که باید کپی شوند، 5 کاراکتر است.

متد  Length : این متد طول رشته را برمیگرداند.

متد CompareTo : دو رشته را با هم مقایسه میکند. اگر رشته اول برابر رشته دوم باشد، مقدار صفر، اگر رشته اول بزرگتر از رشته دوم باشد، مقدار 1 و اگر کوچکتر باشد، 1- را برمیگرداند.

متد Equals :دو رشته را با هم مقایسه کرده تعیین میکند آیا دو رشته با یگدیگر برابر هستند یا خیر. اگر برابر باشند true وگرنه false را برمیگرداند.

متد StartWith : تعیین میکند آیا شروع یک رشته با رشته خاصی تطبیق دارد یا خیر. اگر مطابق باشد مقدار true وگرنه false را برمیگرداند.

متد EndsWith : تعیین میکند آیا انتهای رشته با رشته خاصی برابر است یا خیر.

متد IndexOf : اولین مکان وقوع رشته ای را در رشته دیگر تعیین میکند.

متد LastIndexOf : مکان آخرین وقوع رشته ای را در رشته دیگر برمیگرداند.

متد IndexOfAny : مکان اولین وقوع رشته ای را در تعدادی کاراکتر از نوع یونیکد تعیین میکند.

متد  LastIndexOfArray : مکان آخرین وقوع رشته ای را در تعدادی کاراکتر از نوع یونیکد تعیین میکند.

متد Replace : رشته ای را با رشته دیگر جایگزین میکند.

متد ToUpper : کلیه حروف کوچک رشته را به حروف بزرگ تبدیل میکند.

متد ToLower : کلیه حروف بزرگ رشته را به حروف کوچک تبدیل میکند.

متد Trim :فضای خالی سمت چپ و راست رشته را حذف میکند.

متد TrimEnd : فضای خالی انتهای رشته را حذف میکند.

متد TrimStart : فضای خالی ابتدای رشته را حذف میکند.

متد SubString : بخشی از رشته را برمیگرداند.

متد Remove : بخشی از رشته را حذف میکند.

متد Insert : رشته ای را در مکان خاصی از رشته دیگر اضافه میکند.

متد PadLeft : با افزودن فضای خالی یا کاراکتر یونیکد خاصی به سمت چپ، رشته کاراکتری را از سمت راست تنظیم میکند.

متد PadRight : با افزودن فضای خالی یا کاراکتر یونیکد خاصی به سمت راست، رشته کاراکتری را از سمت چپ تنظیم میکند.

متد Split : رشته ای را با استفاده از یک جدا کننده به چند زیر رشته تبدیل میکند.

متد Format : برای تعیین فرمت نمایش بکار میرود. این متد با کلاس string استفاده میگردد.

 
منبع  : http://www.sourcecodes.ir/post.php?id=190&title=%D8%B1%D8%B4%D8%AA%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-


غیرفعالسازی SMB در ویندوز

نوشته شده توسط :سعید كلانتری
چهارشنبه 10 خرداد 1396-02:57 ب.ظ

غیرفعالسازی SMB در ویندوز 8 ، 10 ، سرور 2016 و سرور 2012

– ابتدا پاورشل را با دسترسی Administrator باز کنید.

– دستور زیر را جهت غیرفعال کردن SMBv1 وارد کنید.

سپس پس از وارد کردن حرف Y را به نشانه تأیید وارد نمایید.

– دستور زیر را جهت غیرفعال کردن SMBv2 و SMBv3 وارد کنید.

نکته : در صورت بروز مشکل در SMB و سیستم File sharing در شبکه با دستورات زیر می‌توانید به حالت قبل باز گردید.

غیرفعالسازی SMB در ویندوز 7 ، ویستا ، سرور 2008 و سرور 2008R2

– پاورشل را با دسترسی Administrator باز کنید.

– دستور زیر را جهت غیرفعال سازی SMBv1 وارد نمایید.

– سپس دستور زیر را جهت غیرفعال کردن SMBv2 و SMBv3 وارد کنید.

بدین ترتیب شما پروتکل SMB Server را غیر فعال کرده و راه نفوذ را می بندید.

نکته : در نظر داشته باشید با وارد کردن کدهای بالا ممکن است در سیستم File Sharing دچار اختلال گردید. در صورت اختلال کدهای زیر را وارد کرده تا به حالت قبل باز گردید.

5- بروز نگه داشتن آنتی ویروس





درباره وبلاگ:



آرشیو:


طبقه بندی:


آخرین پستها:


پیوندها:


پیوندهای روزانه:


صفحات جانبی:


نویسندگان:


ابر برچسبها:


آمار وبلاگ:







The Theme Being Used Is MihanBlog Created By ThemeBox