[LinuxFocus-icon]
ÇáÃæáì  |  ÇáÎÇÑØÉ  |  ÝåÑÓ  |  ÈÍË

ÃÎÈÇÑ | ãÍÝæÙÇÊ | ÑæÇÈØ | Úä ÇáãÌáÉ
[an error occurred while processing this directive]
Georges Tarbouriech
ÇáãÄáÝ Georges Tarbouriech
<georges.t(at)linuxfocus.org>

äÈÐÉ Úä ÇáßÇÊÈ:

Georges ãÊãÑÓ Ýí íæäßÓ¡ íåæì ÇáãäÊÌÇÊ ÇáÊí ÊÓÇåã Ýí ÇäÊÔÇÑ ÇáÍáæá ÇáÈÑãÌíÉ ÇáÍÑÉ Ýí ÃæÓÇØ ÇáãÍÊÑÝíä



ÊÑÌãå Åáì ÇáÚÑÈíÉ:
Taha Zerrouki <taha(at)linuxfocus.org>

ÇáÝåÑÓ:

 

MySQL æ Perl, ÊÒÇæÌ ÇáÇäÓÌÇã

MySQL and Perl

äÈÐÉ ãÎÊÕÑÉ:

MySQL æ Perl ÊÕÇÍÈÇ ãÏÉ ãä ÇáÒãä¡ æ áÇ ÒÇáÇ ãäÊÔÑíä ÌÏÇ ÑÛã Ãä ÇáãæÖÉ ÊÈÏáÊ åÐÇ ÇáãÞÇá íÊÍÏË Úä åÐíä ÇáãäÊÌíä æ åãÇ íÚãáÇä ãÚÇ¡ ÓæÇÁ Úáì ÇáÇäÊÑäÊ Ãæ Ýí ÇáÔÈßÉ ÇáãÍáíÉ¡æ ÓäÖÑÈ ãËáÇ íÚãá Ýí ÃäÙãÉ íæäßÓ ÇáÍÑÉ æ ÛíÑåÇ¡ æ íãßä ÊßííÝå ãÚ ÇáÃäÙãÉ ÇáÃÎÑì ÇáãÊÏÇæáÉ. ãÞÇá áíÓ ãÞáÇ ÊÚáíãíÇ áÈÑá Ãæ ãÇí.Ó.ß.á¡ æ áÇ äÞÏÇ áåÇ¡ ÅäãÇ íÊÍÏË Úä ÊÚÇæäåãÇ¡ ÝÈÇáÊÚÇæä íÝÚáÇä ãÇ áÇ íÞÏÑÇä Úáíå ãÊÝÑÞíä



 

ãÇÐÇ ÚäåãÇ ãÚÇ¿

MySQL äÙÇã ÅÏÇÑÉ ÞæÇÚÏ ÇáÈíÇäÇÊ Relational DataBase Management System (RDBMS) ÊÌÏå Ýí http://www.mysql.com. ÕÏÑ ÈÊÑÎíÕ GNU GPL ÇáÍÑ ÍÓÈãÇ íÓÊÚãá áÃÌáå.ÇÞÑà ÇáÊÑÎíÕ Ýí ãæÞÚ ãÇí.Ó.ß.á . íÚãá ÎÇÏãÇ Ãæ ÒÈæäÇ Úáì ÚÏÉ ãäÕÇÊ (platforms) . ááÚÏíÏ ãä ÃäÙãÉ ÅÏÇÑÉ ÞæÇÚÏ ÈíÇäÇÊ ÊÑÇÎíÕ ÍÑÉ¡ áßääÇ áÓäÇ ÈÕÏÏ ÇáãÞÇÑäÉ ÈíäåÇ¡ æ ÇÎÊíÇÑäÇ MySQL áåÐÇ ÇáãÞÇá ÇÎÊíÇÑ ÇÚÊÈÇØí. æ áä äÞÇÑä ÃíÖÇ ÇáÃäÙãÉ "ÇáÊÌÇÑíÉ" ãËá Informix æ Oracleæ Sybase¡ Èá ÍÓÈäÇ Ãä MySQL ãä ÃæÓÚåÇ ÇäÊÔÇÑÇ . . Ýí ãÞÇáäÇ¡ ÓäÚãá ÈÇáÅÕÏÇÑ 3.23.46 (ÇÚÊÈÇØíÇ). ÍÊì Ííä ßÊÇÈÉ åÐÇ ÇáãÞÇá ÇáÅÕÏÇÑ ÇáãÓÊÞÑ åæ 3.23.46 æ ÇáÅÕÏÇÑ ÇáÊÌÑíÈí ÇáãÑÊÞÈ åæ 4.0. åÐå ÇáÅÕÏÇÑÇÊ ÞÏ ÊÍãøá ÅãÇ ãÕÏÑÇ ( ãÊä source code) æ íÕÑøÝ ( compile) ÈÚÏ Ðáß æ ÅãøÇ ÍÒãÉ (package ).
áÊÚãá ÈÜ MySQL ãÚ ÈÑá ÊÍÊÇÌ ÈÚÖ ÇáÃÛÑÇÖ : æÍÏÇÊ DBI áÈÑá . æ Úáì ÇáÃÞá Úáíß ÊÍãíá DBI æ Msql-Mysql-modules æ Data-Dumper æ Data-ShowTable.
áä äÊØÑÞ Åáì ÇáÊËÈíÊ áÓåæáÊå¡ ÝÅä ÔÞ Úáíß ÇÓÊÚä ÈÇáæËÇÆÞ ÇáãÑÝÞÉ ÈÇáÍÒã.
Perl ÇÎÊÕÇÑ ááÛÉ ÇáÊÞÑíÑ æ ÇáÇÓÊÎáÇÕ ÇáÚãáííä (Practical Extraction and Report Language )¡ÈÇÏÆ Ðí ÈÏÁ ÊæÓÚÊ Åáì ãÚÇáÌÉ ÇáãÓÊäÏÇÊ (ÊÍáíá æ ÇÓÊÎáÇÕ)¡ áßäåÇ ÓÑÚÇä ãÇ ãÇ ÇÊÓÚÊ ÍÊì ÔãáÊ ßá ÔíÁ ãä ãåÇã ÇáÅÏÇÑÉ æ ÇáãÎØæØÇÊ scripts CGI æ ÇáÊØÈíÞÇÊ æ ØÈÚÇ æÇÌåÇÊ ÞæÇÚÏ ÇáÈíÇäÇÊ.
ÈÑá íÕÇÍÈ Ìá ÊæÒíÚÇÊ íæäßÓ ÇáÍÑÉ ãäåÇ æ ÛíÑåÇ. ÂÎÑ ÅÕÏÇÑ ãÓÊÞÑ ãäå ÍÊì ÇáÂä 5.6.1¡ æ äÊÑÞÈ ÇáÅÕÏÇÑ ÇáÊÌÑíÈí ÑÞã 5.7.2 æ ÓäÚãá Ýí ãÞÇáäÇ È 5.005.03 Åäå ÞÏíã áßäå ÌíÏ. .http://www.perl.com ÃãÇ Åä ÇÝÊÞÏÊå Úáì äÙÇãß æ åÐÇ ÛíÑ ãÚÞæá Íãøáå ãä ÈÑá Ýíå æÍÏÇÊ áßá ÔíÁ ÊÞÑíÈÇ¡ ÓÊÌÏåÇ Ýí ÞÓã CPAN ãä ÇáãæÞÚ ÐÇÊå¡ Åäå ãäÌã ãä ÐåÈ!
ÊÐßÑ Ãä ÇáÚãá ÈÇáÃÏÇÊíä ãÚÇ íÊØáÈ ÎÇÏã æíÈ! ApacheÃÈÇÔ ÎíÇÑ ÌíÏ ÅÐ íÕÍÈ ÚÇÏÉ Ìá ÊæÒíÚÇÊ íæäßÓ ¡ æÝÅä áã ÊÌÏå Ýí ÊæÒíÚÊß ( ÇáÊí áÇ ÃÏÑí ãä Ãíä ÃÊíÊ ÈåÇ) ÝÓÊÌÏå Ýí ãæÞÚ http://www.apache.org.

 

ãËÇáäÇ

áÇÈÏ Ãäß ÃÏÑßÊ Ãä ãÌáÊäÇ ãÊÚÏÏÉ ÇááÛÇÊ¡ Ãí Ãäß Åä ßäÊ ÃÍÏ ÇáãÍÑÑíä ÝíåÇ¡ Úáíß ÅÏÇÑÉ ÇáãÞÇáÇÊ ÇáÌÏíÏÉ æ ÊÑÌãÊåÇ¡ Ýãä ÊÑÇå íÝÚá Ðáß¡ æ ãÊì¿... ÇáÂä áÏíäÇ ãÇ íÒíÏ Úä 200 ãÞÇá¡ Ýí ãÇ íäíÝ Úä ÎãÓ áÛÇÊ Ãí 1000 ãÞÇá ( íÇáÈÑÇÚÊí!) æ íÒíÏæä! ßáåÇ ÊÍÝÙ (archive) æ ÊäÓÞ æ ÊáÎÕ... ãä íÚãá ßá åÐÇ¡ Åäå ÈÑá¡ æ ãÇ ÃÏÑÇß ãÇ ÈÑá!
ÑÆíÓ ÇáÊÍÑíÑ Guido Socher¡ íÄáÝ ÈÑÇãÌ ÈÑá ÇáßËíÑÉ¡ áíÓåøá ÇáÚãá. áÞÏ ÃáøÝ ÏÑæÓÇ ÈÑá Ýí ËáÇËÉ ÃÌÒÇÁ ( ÇäÙÑ ÇáãÑÇÌÚ Ýí Ðíá ÇáãÞÇá).
ÇáãÍÑÑ ÇáÅÓÈÇäí Javi¡ ÃáøÝ ÈÑäÇãÌÇ ÈÈÑá áÅÏÇÑÉ åíÆÉ ÇáÊÑÌãÉ.
Atif¡ ÃÍÏ ãÄáÝíäÇ ÇáÈÇÑÒíä¡ ÞÇÏã ãä ããáßÉ ÈÑá¡ ÍíË íÊßáãæä ÈÑá¡ íÓÇåã Ýí MySQL ÈÊØæíÑ ÃÌÇÉ áÅÏÇÑÉ ÇáæíÈ ( ÇäÙÑ ÇáãÑÇÌÚ).
Åä ÃÑÏÊ ÑÄíÉ ÝÑÏæÓ ÈÑá¡ ÒÑ áíäßÓ ÝæßõÓ. ÃãøÇ ÃäÇ ÝãäÐ ÃÕÈÍÊ ÃÍÏ ÇáãÍÑÑíä ÇáÝÑäÓííä ááãÌáÉ ÊßÇÓáÊ¡ ÝÕäÚÊ ÞÇÚÏÊí áÈíÇäÇÊ ÇáãÌáÉ ÈÜ:... ÈãÇÐÇ¿ ÇÍÒÑ¡ È MySQL æ Perl !

 

ÅäÔÇÁ ÞÇÚÏÉ ÈíÇäÇÊ

íÝÊÑÖ Ãäø MySQL æ Ãä ÇáãÓÊÚãáíä ãÍÕäæä ÈßáãÇÊ ÇáÓÑ. ÇáÊËÈíÊ ÎÇÑÌ Úä äØÇÞ åÐÇ ÇáãÞÇá¡ ÅÐ ÊÊæÝÑ æËÇÆÞ ÊÝí ÈÐáß ãÚ MySQL .
ÔÛøá ÎÇÏã ÈãÎØæØÉ mysql.server¡ ÝÊÓÊÏÚí Ïíãæä (daemon)safe_mysqld¡ æ ÈÚÏåÇ íãßä Ãä ÊãÑÑ ÈÚÖ ÇáÎíÇÑÇÊ Åáì åÐÇ ÇáÏíãæä.
ÇÑÊÈØ ÈÇáÎÇÏã ÈÜ

mysql -h host -u user -p.

æ áÇ ÊÓÊÚãá -h host Åä ßÇä ÇáÎÇÏã íÚãá Úáì ÂáÉ ãäÝÑÏÉ. ÈÚÏ Ãä ÊßÊÈ ßáãÉ ÇáÓÑ¡ åÇ ÃäÊ ÐÇ ãÑÊÈØ Èå ( æ åÐÇ ãÇ íÌÈ Úáíß). æ ÇáÂä ÇäÔÆ ÞÇÚÏÉ ÇáÈíÇäÇÊ.
ÇßÊÈ Ýí ÓØÑ ÇáÃæÇãÑ

CREATE DATABASE lf;

ÍÓÈ ãËÇáäÇ ( ÞÇÚÏÉ áãÞÇáÇÊ áíäßÓ ÝæßÓ)¡ ÃãÇ ÃäÊ ÝÓã ÇáÞÇÚÏæÉ ßãÇ ÊÔÇÁ. Ëã ÇãäÍ ÇáÃÐæäÇÊ ááãÓÊÚãáíä ( íÌÈ Ãä Êßæä ÞÇÏÑÇ Úáì ãäÍ ÇáÃÐæäÇÊ Ãí ÕÇÍÈ ÍÞ ÇáÅÏÇÑÉ ). Åä ÃÑÏÊ Ãä íÓÊÚãá ÃÍÏåã åÐå ÇáÞÇÚÏÉ ÝÚáíß Ãä ÊÃÐä áå Úáì ÛÑÇÑ ÇáÃãÑ

GRANT ALL ON lf.* TO username;

ÇÎÊÑ ÇáÞÇÚÏÉ ÈÇáÃãÑ USE lf. Ëã ÇÕäÚ ÌÏæáÇ ßãÇ ÊÑíÏ. Ýí ãËÇáäÇ äÕäÚ ÌÏæáÇ äÓãíå trissue.:

CREATE TABLE trissue (num INTEGER UNSIGNED, category VARCHAR(25), title VARCHAR(40), author VARCHAR(20), en VARCHAR(20), es VARCHAR(20), fr VARCHAR(20),de VARCHAR(20), nl VARCHAR(20), ru VARCHAR(20), tk VARCHAR(20), issue VARCHAR(20));.

æ áÊÊÃßÏ Ãäå ÕäÚå ÝÚáÇ ÇßÊÈ :

USE lf
SHOW TABLES;
DESCRIBE trissue;

åÐÇ ßá ÔíÁ.
ÇáÂä äÍÊÇÌ ÈÚÖ ÇáÈíÇäÇÊ áãáÁ ÇáÌÏæá ÇáÝÇÑÛ. ÇáØÑíÞÉ ÇáÃíÓÑ Ãä äßÊÈ ãáÝÇ äÕíÇ¡ æ äÊÎÐ ÚáÇãÉ ÇáÌÏæáÉ ÝæÇÕáÇ. Ëã ::

LOAD DATA LOCAL INFILE "maindb.txt" INTO TABLE trissue;

Åä ßÇä äÕß ÕÍíÍÇ¡ ÝÓíãÊáà ÇáÌÏæá¡ ÊÃßÏ ãä Ðáß ÈÜ

SELECT * FROM trissue;

ÝÊÙåÑ ÞÇÆãÉ ØæíáÉ. ÇáÂä¡ ÇÕäÚ ÈåÇ ãÇ ÊÔÇÁ ÝÃÖÝ Ãæ ÇÍÐÝ.
ÍÊì ÇáÂä ÊÍÏËäÇ ÝÞØ Úä MySQL æ Èå äÚãá ßá ÔíÁ¡ ÝÃíä ÈÑá¿

 

Perl Ýí ÇáÚãá

ÓíÚíääÇ ÈÑá Úáì ÌÚá ÇáÇÓÊÚáÇãÇÊ (queries) ÂáíÉ¡ æ Úáì ÚÑÖ ÇáäÊÇÆÌ ÈãÊÕÝÍ æíÈ¡ æ ÛíÑ Ðáß. åÐÇ ãÇ íÊæÌÈ Ãä Êßæä æÍÏÇÊ ÈÑá ãËÈÊÉ ÌíÏÇ áíÚãá ÈÑá ãÚ MySQL ÚãáÇ ãäÓÌãÇ.
ÓäßÊÈ ãÎØæØÇÊ ÈÑá áÇÓÊÚãÇáåÇ ãÎØæØÇÊ cgi. åÐå ÇáãÎØæØÇÊ ÓÊãÒÌ Èíä HTML æ Perl áÇÓÊÚáÇã ÇáÞÇÚÏÉ æ ÕíÇÛÉ ÇáäÊÇÆÌ. ÓäÚãá ãÎØæØÉ ÊÈÍË Úä ÇáãÞÇáÇÊ ÇáÊí ÃáÝåÇ ãÄáÝ ãÇ¡ ÝäÚÑÖ ÑÞã ÇáãÞÇá æ ÝÆÊå æ ÚäæÇäå æ ÃÓãÇÁ ÇáãÊÑÌãíä Åáì ÇááÛÇÊ ÇáÃÎÑì ( ÇáãÊæÝÑÉ ÇáÂä Úáì ÇáÃÞá) æ ÇáÚÏÏ ÇáÐí äÔÑ Ýíå ÇáãÞÇá.
ÇÊÎÐ åÐå ÇáãÎØæØÉ äãæÐÌÇ ÊÞÊÏí Èå áÊáÈíÉ ÍÇÌÇÊß¡ áßä ÇÍÊÑÓ ÝÇáãËÇá ÛíÑ Âãä¡ ÇÍÕá Úáì ãÎØæØÇÊ ÂãäÉ .


    # First, we say this is a "Tainted" Perl script.

    #!/usr/bin/perl -Tw
    #
    # This is a comment
    # db consult
    #
    # We use the Perl DBI module
    use DBI;

    # As cgi :
    use CGI qw(param());

   print <<END_of_start;

   Content-type: text/html

    <html>
   <title>LFAuthors main db</title>

    <center><TABLE>
    <TR VALIGN=TOP>
    <TD><form action="/cgi-bin/lf.cgi" method="get">

    # Here comes the button's title for the launching page
    <input type="submit" value="        LFAuth       ">
    </form>
    </TD>
    </TR>
    </TABLE>
   

ÇáÂä¡ ÓäÌÚá ÇáãÎØæØÉ ÊÓÊÚáã ãä ÇáÞÇÚÏÉ.
<center><H2>Search by author</H2></center>

<form action=\"/cgi-bin/lf.cgi\" method=\"get\">Author name : <input
type=\"text\" size=\"30\" name=\"author\"><input type=\"submit\"
value=\"Search...\"></form></center>


END_of_start


if (param("author") ne '') {
	$author = param("author");

	$autsrch.='"';
	$autsrch.=$author;
	$autsrch.='"';

# We connect to the database named lf as user doe

	$dbh = DBI->connect("DBI:mysql:lf","doe",'');

	$sth = $dbh->prepare("
		select *
		from trissue
		where
		author = $autsrch
		");

	$sth->execute;


Ëã äÌÚá ÇáãÎØæØÉ ÊÕæÛ ÇáäÊÇÆÌ Ëã ÊÚÑÖåÇ¡ áä äÈÍË Èá ÓäÚÑÖ ßá ãÇ Ýí ÇáÞÇÚÏÉ¡ Ãæ ÓäÈÍË Úä ÇÓã ãÄáÝ ãÇ . æ äÚÑÖ ßá ãÞÇáÇÊå. ÇÍÊÑÓ Ãä ÊÚÑÖ ßá ãÇ Ýí ÇáÞÇÚÏÉ Åä ßÇäÊ ãáíÆÉ ÈÂáÇÝ ÇáÊÓÌíáÇÊ records.
print <<END_suite;

<center>
<TABLE BORDER=>
<tr bgcolor=#A1C4EE>
<th width=60 align=CENTER><font color=#000000> Num </font></th>
<th width=110 align=CENTER><font color=#000000> Category </font></th>
<th width=110 align=CENTER><font color=#000000> Title </font></th>
<th width=110 align=CENTER><font color=#000000> Author </font></th>
<th width=110 align=CENTER><font color=#000000> En </font></th>
<th width=110 align=CENTER><font color=#000000> Es </font></th>
<th width=110 align=CENTER><font color=#000000> Fr </font></th>
<th width=110 align=CENTER><font color=#000000> De </font></th>
<th width=110 align=CENTER><font color=#000000> Nl </font></th>
<th width=110 align=CENTER><font color=#000000> Ru </font></th>
<th width=110 align=CENTER><font color=#000000> Tk </font></th>
<th width=110 align=CENTER><font color=#000000> Issue </font></th>
  		</tr>

END_suite

while( ($num,$category,$title,$author,$en,$es,$fr,$de,$nl,$ru,$tk,$issue)
=$sth->fetchrow() ) {
print "<tr>";
print "<td width=60 bgcolor=#FFFFE8 align=center> $num</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $category</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $title</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $author</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $en</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $es</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $fr</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $de</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $nl</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $ru</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $tk</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $issue</td>";
print "</tr>";

	}
	print "</TABLE>";
	print "<BR>";
	print "<BR>";
	print "<br>";


} else {

# DB Connect

	$dbh = DBI->connect("DBI:mysql:lf","doe",'');


# Search

	$sth = $dbh->prepare("
		select *
		from trissue
		");

	$sth->execute;


# Display result


print <<SUITE;

<center>
<TABLE BORDER=>
<tr bgcolor=#A1C4EE>
<th width=60 align=CENTER><font color=#000000> Num </font></th>
<th width=110 align=CENTER><font color=#000000> Category </font></th>
<th width=110 align=CENTER><font color=#000000> Title </font></th>
<th width=110 align=CENTER><font color=#000000> Author </font></th>
<th width=110 align=CENTER><font color=#000000> En </font></th>
<th width=110 align=CENTER><font color=#000000> Es </font></th>
<th width=110 align=CENTER><font color=#000000> Fr </font></th>
<th width=110 align=CENTER><font color=#000000> De </font></th>
<th width=110 align=CENTER><font color=#000000> Nl </font></th>
<th width=110 align=CENTER><font color=#000000> Ru </font></th>
<th width=110 align=CENTER><font color=#000000> Tk </font></th>
<th width=110 align=CENTER><font color=#000000> Issue </font></th>
  		</tr>

SUITE

while( ($num,$category,$title,$author,$en,$es,$fr,$de,$nl,$ru,$tk,$issue)
=$sth->fetchrow() ) {
print "<tr>";
print "<td width=60 bgcolor=#FFFFE8 align=center> $num</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $category</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $title</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $author</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $en</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $es</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $fr</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $de</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $nl</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $ru</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $tk</td>";
print "<td width=110 bgcolor=#FFFFE8 align=left> $issue</td>";
print "</tr>";

	}
	print "</TABLE>";
	print "<BR>";

}
print end_html;
$sth->finish;


# Disconnect

$dbh->disconnect;

exit;


åÐå äÊíÌÉ ÇáÈÍË :

query


ßá åÐÇ æ ÒíÇÏÉ!

 

ÌÇäÈ ÇáÃãä

Åä ÃÑÏÊ Ãä ÊÞÏã ÎÏãÉ ÞÇÚÏÉ ÇáÈíÇäÇÊ Ýí ãæÞÚß¡ ÝáÇÈÏ Ãä ÊÚÊäí ÈÇáÃãä. áä äÊØÑÞ Åáì ÊÃãíä ÇáãæÇÞÚ æ áÇ ÞæÇÚÏ ÇáÈíÇäÇÊ¡ Èá ÓäÔÏÏ Úáì ÇáãÈÇÏÆ.
ÈÅíÌÇÒ¡ Úáíß ÃæáÇ Ãä ÊÍÕíä ÎÇÏã ÇáæíÈ - ãÇ åæ ÎÇÑÌ Úä äØÇÞ ÇáãÞÇá- æ Åä ÇÍÊÌÊ ÇáÚæä ÝÓÊÌÏ ÃØäÇäÇ ãä ÇáæËÇÆÞ ¡ ÌÑÈ ãËáÇ the Linux Documentation Project.
ËÇäíÇ¡ ÍíäãÇ ÊËÈÊ ÎÇÏã ÞæÇÚÏ ÇáÈíÇäÇÊ¡ ÇÞÑà ÌíÏÇ ÞÓã ÇáÊÃãíä ãä Ïáíá ÇáÇÓÊÚãÇá. æ ÊÐßÑ ãÑÉ ÃÎÑì Ãä áÇ ÊÏÚ Ãí ÍÓÇÈ Ïæä ßáãÉ ÓÑ¡ áÇ ÓíãÇ ÍÓÇÈ ãÏíÑ ÇáÞÇÚÏÉ ( ÇáÐí áíÓ ãÏíÑ ÇáäÙÇã ÍÊãÇ). ßãÇ áÇ ÊãäÍ ÃÐæäÇ áÃí ßÇä... åÐÇ íÈÏæ ÈÏíåíÇ¡ ÍÊì Ãä ÇáßËíÑíä íÛÝáæä Úäå!
áã áÇ äÈÇáÛ ÞáíáÇ æ äÓÊÌÐÑ ÞÇÚÏÉ ÇáÈíÇäÇÊ! ØÇáÚ ãÞÇá" ÇÓÊÌÐÇÑ ßá ÇáÎÏãÇÊ" á Marks ãä äÝÓ ÇáÚÏÏ.
Åäå íÊÍÏË Úä ÞÇÚÏÉ ÈíÇäÇÊ ÃÎÑì áßä ãÇ íÞæáå íãßä ÊØÈíÞå Úáì MySQL.
"ÚÈÑ ÇáäÝÞ"ÇÍÊíÇØ Ããäí ÂÎÑ¡ íÎÕ Óíá ÇáÈíÇäÇÊ¡ Ýáã áÇ äÑÓáåÇ ÚÈÑ äÝÞ¡ ÇäÙÑ Ýí Ðáß ãÞÇá
æ ÃÎíÑÇ¡ ÇáÈÑãÌÉ ÇáÂãäÉ ÇÍÊíÇØ Ããäí ÂÎÑ¡ ÅÐ Úáì ÇáÑÛã ãä Ãä ÈÑá áÛÉ ÈÑãÌÉ ÑÇÆÚÉ áßä ÇáÛáØ ãÍÊãá¡ æ ÊÝÇÏíÇ áåÐÇ ØÇáÚ ÂÎÑ ãÞÇá Ýí ÓáÓáÉ ÇáÈÑãÌÉ ÇáÂãäÉ æ íÎÕ ÈÑãÌÉ ãÎØæØÇÊ cgi Ýí ÈÑá ( Úáíß Ãä ÊÞÑÃå).
åÐÇ íÝÊÑÖ Ãä áÏíß äÙÇãÇ ÞæíÇ¡ Þáíá ÇáËÛÑÇÊ ÇáÃãäíÉ¡ Èå ÂÎÑ ÇáãÎØæØÇÊ ááÊÃãíä æ ÃÏæÇÊ ÇáÃãä ãËá NIDS (Network Intrusion Detection System) ãËá snort (ãä http://www.snort.org), ÍÇÌÒ äÇÑ, ãäÇÝÐ æ ãÊÝÍÕí ÇáÃãä (nmap, nessus), æ ÛíÑåÇ.
æ ÇÍÑÕ Ãä Êßæä ÇáÎÏãÇÊ ãäÝÕáÉ Úáì ÎæÇÏã ÎÇÕÉ: ÎÇÏã æíÈ æ ÎÇÏã ÞÇÚÏÉ ÈíÇäÇÊ... æ ÈÏÇÆá mirors áåÇ ãÊæÝÑÉ áßä åíåÇÊ Ãä ÊÌäÍ Åáì ÇáÓáã ãÇÏÇã ÇáÃãä áã íÓÊÊÈ ÈÚÏ. Úáì ÇáÃÞá Þáá ãä ÇáÎÓÇÆÑ¡ ÝÇáÍÇá íÓæÁ íæãÇ ÈÚÏ íæã. Ýåá ÈáÛÊ!

 

æ ãÇÐÇ ÈÚÏ¿

áåÐÇ ÇáÚãá ØÑÇÆÞ ßËíÑÉ¡ ÍÏÏ ØÑíÞÊß ãäåÇ¡ æ ÃäÙãÉ ÞæÇÚÏ ÇáÈíÇäÇÊ ßËíÑÉ¡ æ áÛÇÊ ÇáÈÑãÌÉ ÇáÊí ÊÚãá ãÚåÇ ßËíÑÉ ÃíÖÇ. ÃãÇ ÝßÑÉ ÇáãÞÇá ÝÊßãä Ýí áÅÈÑÇÒ Úãá MySQL æ ÈÑá ÚäÏãÇ íÚãáÇä ãÚÇ.
ßÇä ÇÎÊíÇÑí åÐÇ ÇÎÊíÇÑÇ ÐÇÊíÇ¡ ÝÃäÇ Ãåæì MySQL áÃäå ÕÛíÑ ÇáÍÌã ÓÑíÚ ÃÎæ ËÞÉ æ íÚãá Úáì ÃäÙãÉ ÊÔÛíá ßËíÑÉ. æ ÃäÇ ãÚÌÈ ÈÚãá ÝÑíÞ MySQL Ïæä Ãä ÃäÓì ãÓÇåãÉ ÇáÂÎÑíä. æ ãÇ ÔÏ ÅÚÌÇÈí Ãäåã áã íÎÊÑÚæÇ ÇáÚÌáÉ ãÑÉ ÃÎÑì¡ Èá ÃÑÇÏæÇ ÇáÊíÓíÑ.
ÃãÇ ÈÑá¡ Ýßá ãÇ ÞÏ Þíá Úäå¡ Ýåá ãä ãÒíÏ! ÅÐ áä ÊÓÊÛäí Úäå¡ Åä ßäÊ ãÏíÑ ÔÈßÉ Ãæ ãÕããÇ Ãæ ÃíÇ ßäÊ. ãÌÊãÚ ÈÑá ÛÒíÑ ÇáãÚÑÝÉ ßËíÑ ÇáæËÇÆÞ. ÓÊÌÏ ãÌáÉ ÊÚäì ÈÈÑá ÇÓãåÇ Perl Journal ÊÕÏÑ ãÚ ßá ÚÏÏíä ãä ãÌáÉ SysAdmin¡ ÝÅä ÃÑÏÊ ÇáÇÔÊÑÇß ÝÒÑ ÇáãæÞÚ http://www.samag.com.
ßáãÇ ÊÍÏËäÇ Úä ÇáÃÚãÇá ÇáÚÙíãÉ ÃæÑÏäÇ ãÇ ÞÏ íÎÑÌäÇ Úä ÇáãæÖæÚ¡ æ ÍÓÈß ÞÇÑÆÇ áãÌáÊäÇ áíäßÓ ÝæßÓ Ãä ÊáÇÌÙ ÞáÉ ÚÏÏ ãä íÚãáæä Ýí ÇáãÌáÉ¡ ÈíÏ Ãäøß ÓÊÞÑÃåÇ Ýí áÛÇÊ ÚÏíÏÉ. Ãáã ÊÑ Ãä ÇáÞáíáíä Ýí ÝÑÞ ÇáÚãá íäÌÒæä ãÚÙã ÇáÚãá ÏÇÆãÇ.
ßá ÇáÚãá ÛÇáÈÇ ãÇ íäÌÒå æÇÍÏ Ãæ ÇËäÇä¿ Ýåã ãÏíÑæä æ ãÊÑÌãæä... ÇáÎ. ÒÑ ÇáØÇÞã ÇáÑæÓí æ ÇáÊÑßí¡ áÊÑì Ãä Ìá ÇáãÞÇáÇÊ íÊÑÌãåÇ Kyrill Ãæ Erdal . ÒÑ ãÔÑæÚí ÇáÞÓã ÇáÚÑÈí æ ÇáÞÓã ÇáÈÑÊÛÇáí áÊÑì äÝÓ ÇáÔíÁ æ ÃÍííåã Úáì ãÇ ÈÐáæå ãä ÌåÏ. ÇáÃãÑ ÓíÇä áÌãíÚßã ÝÇáÈÑÇãÌ ÇáÍÑÉ ÊãäÍßã ÇáßËíÑ.
ÂÓÝ Úáì ÇáÎÑæÌ Úä ÇáãæÖæÚ¡ áßääí ÃÚÊÞÏ Ãä åÐÇ ßÇä íÌÈ Ãä íÞÇá.
ÚæÏÉ Åáì ãæÖæÚäÇ¡ ÝäÎÊã ÈßáãÉ Úä ÇáÈÑÇãÌ ÇáÍÑÉ. ãä íÚãáæä Ýí MySQL æ ÈÑá íÓÊÍÞæä ÔßÑÇ ÌÒíáÇ ÅÐ íÒÏæääÇ ÈÃÏæÇÊ ÚÙíãÉ ãÌÇäÇ¡ åÐå ÇáÃÏæÇÊ ÊÍÇßí ÌæÏÉ ÇáÃÏæÇÊ ÇáÊÌÇÑíÉ ( Åä áã ÊÝÞåÇ) ÅäåÇ ÊÚÏá ãÑÇÑÇ æ ãæËÞÉ ÌíÏÇ¡ æ ÊÚãá Úáì Ìá ÃäÙãÉ íæäßÓ ¡ Ãíä ÓÊÌÏ ãËáåÇ¿ ÃÔß Ýí Ðáß.
ÑÈãÇ áã íÚáãß åÐÇ ÇáãÞÇá ÔíÆÇ¡ áßä ÞÏ íÏÝÚß Åáì ÊÌÑÈÉ åÇÊå ÇáãäÊÌÇÊ¡ æ åÐÇ áíÓ áíÓ åíäÇ.
ÃáÓäÇ äÍíÇ Ýí ÚÕÑ ÚÙíã¿

 

ÇáãÑÇÌÚ

ãæÞÚ ÈÑá

ÏÑæÓ Guido :

Perl I
Perl II
Perl III

äÙÑÉ Úáì ßÊÇÈ "ÇáÈÑãÌÉ ÇáãÍÊÑÝÉ ÈÈÑá"w :

ÈÑãÌÉ ÈÈÑá

ãÓÇåãÉ Atif Ýí MySQL.

ãÞÇá Ýí ãÌáÊäÇ Úä MySQL : ãÞÇá ÞÏíã áßäå äÇÝÚ :

MySQL

ãÞÇá ÊÚáíãí ãä ÌÒÆíä

SQL Part I
SQL Part II  

ÊÚÞíÈß Úáì åÐÇ ÇáãÞÇá

áßá ãÞÇá ÕÝÍÉ ÎÇÕÉ ÈÇáÊÚÞíÈÇÊ¡ ÃÑÓá ÊÚÞíÈÇ Ãæ ÇØáÚ Úáì ÊÚÞíÈÇÊ ÇáÂÎÑíä.
 ÕÝÍÉ ÇáÊÚÞíÈÇÊ 

ÇáÕÝÍÇÊ ÈÑÚÇíÉ ØÇÞã áíäßÓ ÝæßõÓ
© Georges Tarbouriech, FDL
LinuxFocus.org

ÇÖÛØ åäÇ ááÊäÈíå Úä ÎØà Ãæ áÇÑÓÇá ãáÇÍÙÇÊß Åáì áíäßÓ ÝæßõÓ
ãÚáæãÇÊ Úä ÇáÊÑÌãÉ:
en --> -- : Georges Tarbouriech <georges.t(at)linuxfocus.org>
en --> ar: Taha Zerrouki <taha(at)linuxfocus.org>

2002-01-31, generated by lfparser version 2.22