Install Oracle(Mode SI) With ASM In Oracle Linux - Part 3 - تنظیمات شبکه سیستم‌عامل

اول از همه باید تنظیمات شبکه رو درست کنیم. اول میذاریم به صورت اتوماتیک از DHCP مون IP بگیره

مهمترین ابزاری که باهاش تو لینوکس کارها رو جلو میبریم ترمینال هستش

برای اینکه بفهمیم IP ای که سیستم‌عاملمون از DHCP گرفته چیه از دستور ifconfig تو لینوکس استفاده می‌کنیم

حال برای اینکه این IP رو به صورت STATIC دربیاریم باید INTERFACEامون رو ویرایش کنیم راه‌های مختلفی برای اینکار هست(مثل SETUP) و ETC/NETWORK و ...

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

SERVICE NETWORK RESTART

تو محیط‌های عملی چون نمیشه همیشه به سرور و اتاق سرور راحت دسترسی داشت باید به سرور SSH زد

موقع PING هم در واقع TTL = 64 یعنی سیستم‌عاملش UNIX بیسه

۲۱ فروردين ۹۵ ، ۰۹:۲۷ ۱ نظر
مهدی غفاری

Bridge برای اینترنت

برای bridge می‌تونیم ماشین رو با کارت شبکه وایرلسمون یا کارت شبکه اترنتمون (یا هر شبکه‌ای که بخوایم) bridge کنیم

ادامه مطلب...
۰۸ فروردين ۹۵ ، ۱۲:۴۳ ۰ نظر
مهدی غفاری

Install Oracle(Mode SI) With ASM In Oracle Linux - Part 2 - نصب سیستم‌عامل

سیستم‌عامل انتخابی ما OEL 6.6 است که فایل ISO اش رو دانلود کردیم و در هارد داریم

از منوی file گزینه‌ی new virtual machine رو انتخاب می‌کنیم و نصب رو به صورت typical ادامه میدیم

ادامه مطلب...
۰۲ فروردين ۹۵ ، ۰۲:۵۲ ۰ نظر
مهدی غفاری

Install Oracle(Mode SI) With ASM In Oracle Linux - Part 1 - نیازهای سخت‌افزاری

ما برای اینکه اوراکل رو روی لینوکس نصب کنیم یک فضایی برای سیستم‌عامل و نرم‌افزارهای grid, oracle و یک فضایی هم برای asm نیاز داریم چون ما میخوایم دیتابیس رو روی asm بیاریم بالا

حداقل فضایی که برای سیستم‌عامل باید در نظر بگیرید ۲۰ گیگابایت است (۳۰ به بالا بهتر است)

۲۰ گیگ برای دیسک اصلی asm

۱۰ گیگ برای دیسک FRA

پس نزدیک ۵۰ گیگ به عنوان حداقل فضاتون نیاز دارید

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

همچنین نیاز به 4 core سی‌پی‌پو داریم

۰۲ فروردين ۹۵ ، ۰۲:۳۳ ۰ نظر
مهدی غفاری

تفاوت نسخه workstation با vSphere

یک محیط مجازی برای محیط‌هایی که شما میخواین نسخه سرور vmware رو داشته باشید. هسته vSphere در حقیقت ۲ لایه داره:

  • Infrastructure services
  • Application services

که Infrastructure services شامل ۳ کامپوننت میشه:

  • Compute
  • Storage
  • Network

همچنین لایه Application services شامل ۳ کامپوننت میشه:

  • Availibility
  • Security
  • Scalability

Vmware vSphere یک محصول سرور بیس هستش که بریا دیتاسنترهای بزرگ استفاده میشه که روی اون می‌تونید سیستم‌عامل‌های مختلفی رو نصب کنید.

ما چون در محیط عملیاتی نیستیم از نسخه دسکتاپی به اسم Vmware Workstation استفاده می‌کنیم که برای کارهای آموزشی بسیار کاربرد داره

البته میشه از workstation هم به عنوان سرور استفاده کرد ولی توصیه نمیشه

یک محیط مجازی برای محیط‌هایی که شما میخواین نسخه سرور vmware رو داشته باشید. هسته vSphere در حقیقت ۲ لایه داره:

  • Infrastructure services
  • Application services

که Infrastructure services شامل ۳ کامپوننت میشه:

  • Compute
  • Storage
  • Network

همچنین لایه Application services شامل ۳ کامپوننت میشه:

  • Availibility
  • Security
  • Scalability

Vmware vSphere یک محصول سرور بیس هستش که برای دیتاسنترهای بزرگ استفاده میشه که روی اون می‌تونید سیستم‌عامل‌های مختلفی رو نصب کنید.

ما چون در محیط عملیاتی نیستیم از نسخه دسکتاپی به اسم Vmware Workstation استفاده می‌کنیم که برای کارهای آموزشی بسیار کاربرد داره

البته میشه از workstation هم به عنوان سرور استفاده کرد ولی توصیه نمیشه

۰۲ فروردين ۹۵ ، ۰۲:۲۷ ۱ نظر
مهدی غفاری

نصب Linux-Dash روی CentOS 6

یکی از نرم‌افزارهای مانیتورینگ مورد علاقه مدیرها قطعاً Linux-Dash ه

https://github.com/afaqurk/linux-dash

این نرم‌افزار با PHP, Node.js, Python و Go هم نوشته شده و قطعاً‌ با هر وب‌سرویسی که از یکی از این زبان‌ها ساپورت کنه بدون مشکل کار میکنه

من نصب رو معمولاً روی CentOS با وب‌سرویس Apache انجام میدم ولی خود تیم توسعه‌دهنده Node.js رو پیشنهاد میکنن

یه نکته‌ای که تو نصب نرم‌افزار هستش اینه که باید فانکشن‌های exec, shell_exec, and escapeshellarg تو php فعال بشن

برای چک کردن این قضیه که این فانکشن‌ها فعال هستن یا نه:

<?php

// Show all information, defaults to INFO_ALL
//phpinfo();

if(function_exists('exec')) {
echo "exec is enabled <br>";
}
else{
echo "exec is disabled <br>";
}

if(function_exists('shell_exec')) {
echo "shell_exec is enabled <br>";
}

else{
echo "shell_exec is disabled <br>";
}

if(function_exists('escapeshellarg')) {
echo "escapeshellarg is enabled";
}

else{
echo "escapeshellarg is disabled";
}

?>

اگه فانکشن‌ها فعال بودند که کاری ندارید. اگه فانکشنها فعال نبودند توی فایل php.ini برید و 

disable_functions = 
suhosin.executor.func.blacklist = ""

رو به این صورت بذارید که فانکشنها از حالت disable در بیان

و برای اینکه بفهمید این فایل کجا قرار داره:

php -i |grep "php.ini"

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

<VirtualHost 127.0.0.1>
………
<IfModule mod_php5.c>
php_admin_value suhosin.executor.func.blacklist = "shell_exec, exec, escapeshellarg"
</IfModule>
……
</VirtualHost>

برای گذاشتن پسورد روی داشبورد

توی مسیر /etc/httpd/conf/ برید و فایل httpd.conf رو باز کنید:

<Directory /var/www/html/mmon>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>

همچنین

nano /var/www/html/mmon/.htaccess

و

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /var/www/html/mmon/.htpasswd
Require valid-user

و

htpasswd -c /var/www/html/mmon/.htpasswd admin

آخرش هم یکبار سرویس رو ریستارت کنید.

۰۱ فروردين ۹۵ ، ۱۱:۱۳ ۰ نظر
مهدی غفاری

مروری اجمالی بر سخت‌افزاری‌های مورد نیاز کلاستر - قسمت اول

دریافت اسلایدها
حجم: 11.7 مگابایت

 

تو این پست میخوایم یک مرور اجمالی بر سخت‌افزاری‌هایی که برای راه اندازی کلاستر نیاز هست داشته باشیم

اینا رو حتما به عنوان یک DBA باید بدونید حتی باید به شرکت یا سازمان کمک کنید و LOM تهیه کنید که تجهیزات رو خریداری کنه

بعد از سخت‌افزار شما باید توپولوژی شبکه‌ی کلاستر رو هم بدونید برای کار عملی حتما لازمه که اینها رو بدونید

ما مدلهای مختلف سرور داریم

به سرورهای زیر ml server میگن که به صورت tower ای هستن

ادامه مطلب...
۲۸ اسفند ۹۴ ، ۱۳:۱۲ ۳ نظر
مهدی غفاری

برقراری ارتباط host با guest

اگر می‌خوایم ارتباط host امون رو با guest هامون از طریق host-only برقرار کنیم Ip هاستمون رو باید با ip سیستم مهمانمون یکی بدیم

در حقیقت شما ip کارت شبکه vmاتون رو هرچی بذارید داخل vmاتون هم ip رو توی اون رنج بذارید این ۲ تا همدیگه رو ping میکنن

توی حالت NAT هم از آداپتور NAT

۲۵ اسفند ۹۴ ، ۱۱:۱۳ ۰ نظر
مهدی غفاری

بازیابی دیتافایل با آرشیولاگ

فرض کنید دیتافایلی که جدیدا به بانک اضافه شده بنا به دلایلی از بین رفته باشد در این صورت اگر آرشیوها از زمان ایجاد دیتافایل موجود باشند، این امکان وجود دارد که این دیتافایل را بازیابی کرد.

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

"همه آرشیو لاگها از زمان ایجاد دیتافایل موجود باشند"

 

در ادامه سناریویی را در همین موضوع شاهد خواهیم بود.

SQL> archive log list;

Database log mode              Archive Mode

SQL> alter tablespace USEF_TBS add datafile '/acfs/test2.dbf' size 10m;

با دستورات زیر جدول جدیدی را که از دیتافایل جدید فضا می گیرد، اضافه می کنیم تا بعد از بازیابی دیتافایل، بررسی کنیم که اطلاعاتی را از دست ندادیم.

 

SQL> create table usef_tbl1  tablespace usef_tbs as select * from dba_tables where 1=2;

SQL>  alter  table usef_tbl1 ALLOCATE EXTENT(DATAFILE '/acfs/test2.dbf'  size 5m);
Table altered.

SQL> insert into usef_tbl1 select * from dba_tables;
2323 rows created.

SQL> commit;

SQL> select count(*) from usef_tbl1;
      2323

در این مرحله دیتافایل را حذف می کنیم و بانک را استارات مجدد می کنیم.

rm –rf   /acfs/test2.dbf

SQL> startup
ORACLE instance started.
Total System Global Area 8351150080 bytes
Fixed Size                  2701528 bytes
Variable Size            7348422440 bytes
Database Buffers          989855744 bytes
Redo Buffers               10170368 bytes
Database mounted.

ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
ORA-01110: data file 6: '/acfs/test2.dbf' 

SQL> alter database datafile  '/acfs/test2.dbf'  offline;
Database altered.

SQL> alter database open;
Database altered.

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

SQL> select count(*) from usef_tbl1;
ERROR at line 1:
ORA-00376: file 6 cannot be read at this time
ORA-01110: data file 6: ORA-01110: data file 6: '/acfs/test2.dbf' 

SQL> alter database create datafile '/acfs/test2.dbf'  ;
Database altered.

با دستور زیر بازیابی انجام می شود:

SQL> recover datafile  '/acfs/test2.dbf';
Media recovery complete.

SQL> alter database datafile  '/acfs/test2.dbf' ONLINE;
Database altered.
SQL> select count(*) from usef_tbl1;
      2323
۲۵ اسفند ۹۴ ، ۱۱:۰۱ ۰ نظر
مهدی غفاری

Exploring the Oracle Database Architecture

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

همیشه فصل اول اسلایدها مربوط به معماری اوراکل‌ه

به نظرم این خیلی مهمه که یادتون باشه ۳ تا سرویس ابتدای کار همیشه باید اجرا بشه

Lsnrctl start

مخفف listener controller

Emctl start dbconsole

مخفف  Enterprice Manager Controller

Sqlplus / as sysdba
SQL> startup

اگه shutdown به صورت درست و تمیز انجام نشه اوراکل موقع start شدن instance recovery میکنه

اگر مشکل در اجرای em داشتید سرویس em رو stop کنید و ۲ دایرکتوری زیر را پاک کنید:

دایرکتوری رو پیدا کنید که ترکیبی از نام hostname و dbname امون باشه

[root@it ~]# hostname
it.lo
 /u02/app/oracle/product/11.2.0.4/dbhome_1/it.lo_orcl/

این دایرکتوری رو پاک کنید

همچنین این دایرکتوری رو:

/u02/app/oracle/product/11.2.0.4/dbhome_1/oc4j/j2ee/OC4J_DBConsole_it.lo_orcl/

حالا وقتی توی dbca می‌ریم چراغ کانفیگ کردن EM روشن میشه مسری که توی dbca‌ می‌ریم:

Dbca > configur > database > emr > config

اگه قرار باشه با emca دوباره em رو برای خودتون کانفیگ کنید براتون سخت میشه چون باید کلی ورودی بهش بدید از جمله: پورت، اسم هاست و ...

۲۴ اسفند ۹۴ ، ۰۹:۳۶ ۰ نظر
مهدی غفاری