منبع اصلی نوشتار زیر در این لینک قرار دارد

آموزش Cluster کردن دیتابیس Couchbase Server

در مطالب قبلی دیتابیس Couchbase معرفی شد و نحوه ی نصب آن بر روی توزیع CentOS 7.x آموزش داده شد.در این مطلب قصد دارم تا روش Cluster کردن دیتابیس Couchbase را خدمت شما عزیزان آموزش دهم. در این سناریو از سه Node استفاده خواهد شد که روی آنها CentOS 7.x نصب شده است و قصد […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

آموزش تست نفوذ با نرم افزار RED HAWK

  امنیت یک موضوع بسیار مهم می باشد که همیشه باید مورد توجه قرار گیرد.یکی از دغدغه های همه ی مدیران سیستم حفظ امنیت سرویس ها و سرورها می باشد.برای بررسی درجه ی امنیت سرویس ها و یا سرورها ابزارها،نرم افزارها و روش های گوناگونی وجود دارد. در این مطلب قصد دارم تا نرم افزار […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

نمایش کل متن sql از v$sql

خیلی وقتها که میخوایم وضعیت SQL STATEMENTهایی که یوزرها زدن رو ببینیم از ویوی V$SQL و معمولاً از کوئری‌ای شبیه زیر استفاده میکنیم:

select v.SQL_TEXT,
v.PARSING_SCHEMA_NAME,
v.FIRST_LOAD_TIME,
v.DISK_READS,
v.ROWS_PROCESSED,
v.ELAPSED_TIME,
v.service
from v$sql v
where to_date(v.FIRST_LOAD_TIME,'YYYY-MM-DD hh24:mi:ss')>ADD_MONTHS(trunc(sysdate,'MM'),-2)

نکته: WHERE تو کوئری بالا به صورت اختیاریه ولی درکل یادمون باشه میتونیم با استفاده از فیلد FIRST_LOAD_TIME رو تاریخ و زمان اجرای اون کوئری مانور بدیم تا گزارشهای بهتری داشته باشیم.

همونطور که می‌بینید ما اکثر مواقع از فیلد SQL_TEXT استفاده میکنیم ولی با توجه به اینکه میدونیم محدودیت کاراکتری VARCHAR2 دقیقا ۱۰۰۰ کاراکتره احتمالا خیلی از دستورات رو نمیتونیم به صورت کامل ببینیم

اینجاست که بهتره بدونیم V$SQL و V$SQLAREA شامل فیلدی به اسم SQL_FULLTEXT هستن که این فیلد تمام دستور SQL کاربر رو تو دیتاتایپ CLOB ذخیره میکنه پس میشه رشته‌ها رو تا حداکثر سایزی که یک STATEMENT میتونه باشه رو نشون داد(۴۰۰۰ کاراکتر) بیاین باهم ببینیم که چجوری میشه رشته‌ها رو از این فیلد استخراج کرد.

set linesize 132 pagesize 999
column sql_fulltext format a60 word_wrap
break on sql_text skip 1

select
replace(translate(sql_fulltext,'0123456789','999999999'),'9','')
SQL_FULLTEXT
from v$sql
where sql_text like '%TEXT IDENTIFIER%'
group by replace(translate(sql_fulltext,'0123456789','999999999'),'9','')
/

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

SQL_FULLTEXT 
------------------------------------------------------------ 
select /*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 
... query text ...
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa */ from b

امیدوارم براتون مفید باشه

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

نحوه پیدا کردن سایز دیسک های سیستم عامل از طریق PL/SQL

برای اینکار هیچ پکیج PL/SQl از قبل نوشته شده ای وجود نداره برای رسیدن به نتیجه باید یک external table ساخت و با استفاده از یک pre-processor یا همون PREPROCESSOR clause اطلاعات مورد نیاز رو برگردوند متاسفانه این pre-processor ما براساس پلتفرم کار میکنه

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

step0:
[[email protected]]$ df -B 1 /usr
Filesystem 1B-blocks Used Available Use% Mounted on
/dev/sda3 24770654208 22113492992 1398870016 95% /
step1: 
[[email protected] ~]$ cat /tmp/demo/demo.dat
/usr
step2: 
[[email protected] ~]$ cat /tmp/demo/df.sh
#!/bin/bash
/bin/df -B 1 `/bin/cat ${1}` | /bin/awk 'NR == 2 {print $4}'
step3: 
create or replace directory DEMO as '/tmp/demo'
step4: 
CREATE TABLE
df
(
free NUMBER
)
ORGANIZATION EXTERNAL
(
TYPE ORACLE_LOADER
DEFAULT DIRECTORY DEMO
ACCESS PARAMETERS
(
RECORDS DELIMITED BY NEWLINE CHARACTERSET WE8MSWIN1252
NOBADFILE
NOLOGFILE
PREPROCESSOR demo:'df.sh'
FIELDS TERMINATED BY "|" LDRTRIM
REJECT ROWS WITH ALL NULL FIELDS
(
free CHAR
)
)
LOCATION
(
'demo.dat'
)
)
REJECT LIMIT UNLIMITED
;
step5: 
SQL> select * from df;

FREE
----------
1398870016

فقط نکته‌ای که داره اینه که سایز پارتیشن‌ها رو براساس نقاط مانت شده درمیاره و اون نقطه مانت شده ای که میدید حتما باید رو یه پارتیشن جدا باشه تا سایزش رو نشون بده و اگه اون نقطه زیرمجموعه یه نقظه دیگه باشه حتما باید نقطه اصلی رو بدید تا سایز اون پارتیشن رو بفهمید

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

ایجاد جداول در MySQL

 یکی از اصلی ترین اشیا پایگاه داده ها، جداول هستند که اطلاعات را در خود ذخیره می کنند. جداول از ستون ها و سطرها تشکیل شده اند. هر جدول پایگاه داده در مورد یک موجودیت از محیط است و هر سطر نمونه ای از آن موجودیت را بیان می کند. یک محیط می تواند بیمارستان، […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

توابع زبان SQL در اوراکل

تمام دیتابیس‌ها یسری FUNCTIONها دارند که ما می‌توانیم از این فانکشن‌ها استفاده کنیم.

فانکشن‌ها قطعه کدهایی هستند، که از پیش تعریف شده‌اند تا شما را در امور مختلف یاری نمایند. لازم به ذکر است شما می‌توانید در زبانی دیگر، به نام PL-SQL توابعی را به دلخواه، طراحی و در دستورات SQL از آن استفاده نمایید. فانکشن‌ها، موارد زیر را شامل می‌شوند:

  • فانکشن‌های پردازش‌رشته،
  • فانکشن‌های ریاضی،
  • فانکشن‌های تاریخ و زمان،
  • فانکشن‌های جمعی،
  • و سایر فانکشن‌ها

همچنین این فانکشن‌ها ۲ گروه عمده رو تشکیل می‌دهند:

  1. فانکشن‌های یک RESULTای
    1. یعنی وقتی فانکشن رو روی یک جدول صدا می‌کنیم فقط یک RESULT برمی‌گردونه
  2. فانکشن‌های چند RESULTای
    1. یعنی وقتی فانکشن رو روی یک جدول صدا می‌کنیم به ازای هر رکورد یک RESULT جدید برمی‌گردونه

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

اوراکل یکی از پر تعدادترین فانکشن‌ها را در میان بانک‌های‌اطلاعاتی دارد. بعد از اوراکل MYSQL و بعد از اون DB2 و بعد از DB2 پرتعداترین فانکشن را MS SQL SERVER دارد.

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

توابع ریاضی – EXP, Log, Ln

EXP

شما می‌توانید بوسیله‌ی این تابع از فرمول e استفاده نمایید. لازم به ذکر است که، e یک عدد ثابت ریاضی می‌باشد (e = 2.71828…). این تابع عدد e را به توان x می‌رساند. به دستور زیر توجه کنید.

SELECT NUM_1, EXP(NUM_1) FROM NUMBERS;
NUM_1 EXP(NUM_1)
----- ----------
15 3269017.37
5 148.413159
51 1.44093E+22
46 9.4961E+19
28 1.4463E+12
37 1.1719E+16

ادامه مطلب
ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

توابع ریاضی – Ceil, Floor, Round

CEIL

این تابع، یک عدد را به عدد بزرگتر بعد از آن گرد می‌کند. به مثال زیر، که به کارگیری این تابع را نشان می‌دهد، توجه کنید.

SELECT A,CEIL(A) FROM NUM_TEST;

همان‌گونه که در زیر مشاهده می‌کنید، داده‌های فیلد A، به عدد بزرگتر از خود گرد شده‌اند.

A      CEIL(A)
------ --------------
-5.65 -5
6.1 7
11 11
.33 1
-10 -10
1.598 2

ادامه مطلب
ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

زبان SQL – قسمت اول

ساخت کاربر

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

CREATE USER user_name
IDENTIFIED BY my_pass;

در قسمت CREATE USER، نام کاربر و IDENTIFIED BY، رمز ورود کاربر وارد می‌گردد.
با استفاده از دستور CREATE USER یک کاربر به نام ریحانه، با رمز ورود ABC بسازید.

SQL> CREATE USER MAHDI
2 IDENTIFIED BY ABCD;

User created.

SQL>

با استفاده از دستور SHOW USER  نام کاربر متصل به بانک‌اطلاعاتی را نمایش داده می‌شود.

SQL> SHOW USER;
USER is "SYS"
SQL>

در حال حاضر کاربر SYSTEM به بانک اطلاعاتی متصل است.

حذف کاربر

برای حذف یک کاربر از دستور DROP USER استفاده می‌شود. نگارش این دستور به شکل زیر است.

DROP USER user_name;

در صورت استفاده از CASCADE در دستور DROP USER، کاربر با تمام ملحقات مربوطه(تمامی جداول، دیدها و …) حذف می‌گردد.

SQL> DROP USER MAHDI CASCADE;

User dropped.

SQL>

ادامه مطلب
ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

دستورات کنسولی محیط SQL Plus – قسمت دوم

زبان SQL چیست؟

زبان SQL یک زبان بسیار ساده می‌باشد که توسط آن بدون نیاز به محیط‌هایی همانند ENTERPRISE MANAGER CONSOLE می‌توانید با بانک‌های اطلاعاتی ارتباط بر قرار کنید.

دلیل بوجود آمدن زبان SQL چیست؟

شما با فراگیری زبان SQL می‌توانید بدون آشنایی با محیط‌های بانک‌های اطلاعاتی مختلف با آنها ارتباط بر قرار کنید.

در کدام محیط باید دستورات SQL را تایپ کرد؟

در نرم‌افزار بانک اطلاعاتی اوراکل شما می‌توانید در محیط‌های مختلفی دستورات SQL را تایپ کنید، یکی از این محیط‌های معروف SQL Plus نام دارد. برای ورود به این محیط وارد آدرس Start>All Programs>Oracle>Application Development> SQL Plus در ویندوز شوید. (با وارد‌کردن کلمه SQLPLUS در هر شل‌ای نیز می‌توانید به این محیط وارد شوید.) سپس نام کاربری و رمز عبور خود را وارد کنید.

با زبان SQL می‌توان چه کارهایی انجام داد؟

با این زبان شما می‌توانید بر روی داده‌های جداول خود جست وجو کنید، جدول بسازید، جدولی را حذف کنید و به‌طور کل می‌توانید عملیات بسیار گسترده‌ای را انجام دهید.

دستورات کنسولی محیط SQL Plus

شما در محیط SQL Plus می‌توانید از دستوراتی به جز دستورات SQL استفاده نمایید. این دستورات را محیط SQL Plus در اختیار شما قرار داده‌است.

دستور PROMPT برای نمایش یک متن در خروجی استفاده می‌شود.

SQL> PROMPT SALAM
SALAM

دستور SET TIME ON باعث می‌شود تا در خط فرمان شما زمان جاری سیستم اضافه گردد.

SQL> SET TIME ON;
05:45:39 SQL>
05:45:45 SQL>

دستور SET TIME OFF باعث می‌شود تا خط فرمان شما به حالت اولیه باز گردد (حالتی که زمان جاری سیستم نمایش داده نمی‌شود).

05:45:45 SQL> SET TIME OFF;
SQL>
SQL>

ادامه مطلب
ادامه مطلب

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

به اين صفحه امتياز دهيد