|
|
mysql zuì chū de kāi fā zhě de yì tú shì yòng msql hé tā men zì jǐ de kuài sù dī jí lì chéng (isam) qù lián jiē biǎo gé。 bù guǎn zěn yàng, zài jīng guò yī xiē cè shì hòu, kāi fā zhě dé chū jié lùn: msql bìng méi yòu tā men xū yào de nà me kuài hé líng huó。 zhè dǎo zhì liǎo yī gè shǐ yòng jīhū hé msql yī yàng de api jiē kǒu de yòng yú tā men de shù jù kù de xīn de sql jiē kǒu de chǎn shēng, zhè yàng, zhè gè api bèi shè jì chéng yǔn xǔ wéi yòng yú msql 'ér xiě de dì sān fāng dài mǎ gèng róng yì yí zhí dào mysql。
mysql zhè gè míng zì shì zěn me lái de yǐ jīng bù qīng chǔ liǎo。 jī běn zhǐ nán hé dà liàng de kù hé gōng jù dài yòu qián zhuì “ my ” yǐ jīng yòu 10 nián yǐ shàng, ér qiě bù guǎn zěn yàng, mysqlab chuàng shǐ rén zhī yī de montywidenius de nǚ 'ér yě jiào my。 zhè liǎng gè dào dǐ shì nǎ yī gè gěi chū liǎo mysql zhè gè míng zì zhì jīn yǐ rán shì gè mì, bāo kuò kāi fā zhě zài nèi yě bù zhī dào。
mysql de hǎi tún biāo zhì de míng zì jiào“ sakila”, tā shì yóu mysqlab de chuàng shǐ rén cóng yòng hù zài“ hǎi tún mìng míng” de jìng sài zhōng jiàn yì de dà liàng de míng zì biǎo zhòngxuǎn chū de。 huò shèng de míng zì shì yóu lái zì fēi zhōu sī wēi shì lán de kāi yuán ruǎn jiàn kāi fā zhě ambrosetwebaze tí gōng。 gēn jù ambrose suǒ shuō, sakila lái zì yī zhǒng jiào siswati de sī wēi shì lán fāng yán, yě shì zài ambrose de jiā xiāng wū gān dá fù jìn de tǎn sāng ní yà de arusha de yī gè xiǎo zhèn de míng zì。 |
|
mysql shì yī gè xiǎo xíng guān xì xíng shù jù kù guǎn lǐ xì tǒng, kāi fā zhě wéi ruì diǎn mysqlab gōng sī。 mù qián mysql bèi guǎng fàn dì yìng yòng zài internet shàng de zhōng xiǎo xíng wǎng zhàn zhōng。 yóu yú qí tǐ jī xiǎo、 sù dù kuài、 zǒng tǐ yōng yòu chéng běn dī, yóu qí shì kāi fàng yuán mǎ zhè yī tè diǎn, xǔ duō zhōng xiǎo xíng wǎng zhàn wèile jiàng dī wǎng zhàn zǒng tǐ yōng yòu chéng běn 'ér xuǎn zé liǎo mysql zuò wéi wǎng zhàn shù jù kù。 |
|
1. shǐ yòng c hé c++ biān xiě, bìng shǐ yòng liǎo duō zhǒng biān yì qì jìn xíng cè shì, bǎo zhèng yuán dài mǎ de kě yí zhí xìng
2. zhī chí aix、 freebsd、 hp-ux、 linux、 macos、 novellnetware、 openbsd、 os/2wrap、 solaris、 windows děng duō zhǒng cāo zuò xì tǒng
3. wéi duō zhǒng biān chéng yǔ yán tí gōng liǎo api。 zhè xiē biān chéng yǔ yán bāo kuò c、 c++、 eiffel、 java、 perl、 php、 python、 ruby hé tcl děng。
4. zhī chí duō xiàn chéng, chōng fēn lì yòng cpu zī yuán
5. yōu huà de sql chá xún suàn fǎ, yòu xiào dì tí gāo chá xún sù dù
6. jì néng gòu zuò wéi yī gè dān dú de yìng yòng chéng xù yìng yòng zài kè hù duān fú wù qì wǎng luò huán jìng zhōng, yě néng gòu zuò wéi yī gè kù 'ér qiàn rù dào qí tā de ruǎn jiàn zhōng tí gōng duō yǔ yán zhī chí, cháng jiàn de biān mǎ rú zhōng wén de gb2312、 big5, rì wén de shift_jis děngdōu kě yǐ yòng zuò shù jù biǎo míng hé shù jù liè míng
7. tí gōng tcp/ip、 odbc hé jdbc děng duō zhǒng shù jù kù lián jiē tú jìng
8. tí gōng yòng yú guǎn lǐ、 jiǎn chá、 yōu huà shù jù kù cāo zuò de guǎn lǐ gōng jù
9. kě yǐ chǔlǐ yōng yòu shàng qiān wàn tiáo jì lù de dà xíng shù jù kù |
|
yǔ qí tā de dà xíng shù jù kù lì rú oracle、 db2、 sqlserver děng xiāng bǐ, mysql zì yòu tā de bù zú zhī chù, rú guī mó xiǎo、 gōng néng yòu xiàn( mysql bù zhī chí shì tú( yǐ jīng bèi liè rù 5.1 bǎn de kāi fā jìhuà)、 shì jiàn děng) děng, dàn shì zhè sī háo yě méi yòu jiǎn shǎo tā shòu huān yíng de chéng dù。 duì yú yī bān de gè rén shǐ yòng zhě hé zhōng xiǎo xíng qǐ yè lái shuō, mysql tí gōng de gōng néng yǐ jīng chuò chuò yòu yú, ér qiě yóu yú mysql shì kāi fàng yuán mǎ ruǎn jiàn, yīn cǐ kě yǐ dà dà jiàng dī zǒng tǐ yōng yòu chéng běn。
mù qián internet shàng liú xíng de wǎng zhàn gòu jià fāng shì shì lamp( linux+apache+mysql+php), jí shǐ yòng linux zuò wéi cāo zuò xì tǒng, apache zuò wéi web fú wù qì, mysql zuò wéi shù jù kù, php zuò wéi fú wù qì duān jiǎo běn jiě shì qì。 yóu yú zhè sì gè ruǎn jiàn dōushì zūn xún gpl de kāi fàng yuán mǎ ruǎn jiàn, yīn cǐ shǐ yòng zhè zhǒng fāng shì bù yòng huā yī fēn qián jiù kě yǐ jiàn lì qǐ yī gè wěn dìng、 miǎn fèi de wǎng zhàn xì tǒng。 |
|
kě yǐ shǐ yòng mìng lìng xíng gōng jù guǎn lǐ mysql shù jù kù( mìng lìng mysql hé mysqladmin), yě kě yǐ cóng mysql de wǎng zhàn xià zài tú xíng guǎn lǐ gōng jù mysqladministrator hé mysqlquerybrowser。
phpmyadmin shì yóu php xiě chéng de mysql zī liào kù xì tǒng guǎn lǐ chéng shì, ràng guǎn lǐ zhě kě yòng web jiè miàn guǎn lǐ mysql zī liào kù。
phpmybackuppro yě shì yóu php xiě chéng de, kě yǐ tòu guò web jiè miàn chuàng jiàn hé guǎn lǐ shù jù kù。 tā kě yǐ chuàng jiàn wěi cronjobs, kě yǐ yòng lái zì dòng zài mǒu gè shí jiànhuò zhōu qī bèi fèn mysql shù jù kù。 |
|
myisam mysql de mò rèn shù jù kù, zuì wéi cháng yòng。 yōng yòu jiào gāo de chā rù, chá xún sù dù, dàn bù zhī chí shì wù
innodb shì wù xíng shù jù kù de shǒu xuǎn yǐn qíng, zhī chí acid shì wù, zhī chí xíng jí suǒ dìng
bdb yuán zì berkeleydb, shì wù xíng shù jù kù de lìng yī zhǒng xuǎn zé, zhī chí commit hé rollback děng qí tā shì wù tè xìng
memory suǒ yòu shù jù zhì yú nèi cún de cún chǔ yǐn qíng, yōng yòu jí gāo de chā rù, gēngxīn hé chá xún xiàolǜ。 dàn shì huì zhàn yòng hé shù jù liàng chéng zhèng bǐ de nèi cún kōng jiān。 bìng qiě qí nèi róng huì zài mysql chóngxīn qǐ dòng shí diū shī
merge jiāng yī dìng shù liàng de myisam biǎo lián hé 'ér chéng yī gè zhěng tǐ, zài chāo dà guī mó shù jù cún chǔ shí hěn yòu yòng
archive fēi cháng shì hé cún chǔ dà liàng de dú lì de, zuò wéi lì shǐ jì lù de shù jù。 yīn wéi tā men bù jīng cháng bèi dú qǔ。 archive yōng yòu gāo xiào de chā rù sù dù, dàn qí duì chá xún de zhī chí xiāng duì jiào chā
federated jiāng bù tóng de mysql fú wù qì lián hé qǐ lái, luó ji shàng zǔ chéng yī gè wán zhěng de shù jù kù。 fēi cháng shì hé fēn bù shì yìng yòng
cluster/ndb gāo rǒng yú de cún chǔ yǐn qíng, yòng duō tái shù jù jī qì lián hé tí gōng fú wù yǐ tí gāo zhěng tǐ xìng néng hé 'ān quán xìng。 shì hé shù jù liàng dà, ān quán hé xìng néng yào qiú gāo de yìng yòng
csv luó ji shàng yóu dòu hào fēn gē shù jù de cún chǔ yǐn qíng
blackhole hēi dòng yǐn qíng, xiě rù de rèn hé shù jù dū huì xiāo shī
lìng wài, mysql de cún chǔ yǐn qíng jiē kǒu dìng yì liáng hǎo。 yòu xīng qù de kāi fā zhě tōng guò yuè dú wén dàng biān xiě zì jǐ de cún chǔ yǐn qíng。 |
mysql zuì cháng jiàn de yìng yòng jià gòu |
dān diǎn (single), shì hé xiǎo guī mó yìng yòng
fù zhì (replication), shì hé zhōng xiǎo guī mó yìng yòng
jí qún (cluster), shì hé dà guī mó yìng yòng |
mysql zhōng wén shì pín jiào xué |
zuǒ guāng huá de mysql wǎng luò shù jù kù kāi fā jiào xué shì pín http://www.tudou.com/playlist/mysql/
mysql6.0 de alpha bǎn yú 2007 nián chū fā bù, xīn bǎn zēng jiā liǎo duì falcon cún chǔ yǐn qíng de zhī chí。 falcon shì mysql shè qū zì zhù kāi fā de yǐn qíng, zhī chí acid tè xìng shì wù, zhī chí xíng suǒ, yōng yòu gāo xìng néng de bìng fā xìng。 mysqlab gōng sī xiǎng yòng falcon tì dài yǐ jīng fēi cháng liú xíng de innodb yǐn qíng, yīn wéi yōng yòu hòu zhě jì shù de innobase yǐ jīng bèi jìng zhēng duì shǒu oracle suǒ shōu gòu。
2008 nián 1 yuè 16 rì, sunmicrosystems xuān bù shōu gòu mysqlab, chū jià yuē 10 yì měi yuán xiàn jīn wài jiā qī quán。 http://www.mysql.com/news-and-events/sun-to-acquire-mysqll |
|
mysql shì yī gè xiǎo xíng guān xì xíng shù jù kù guǎn lǐ xì tǒng, kāi fā zhě wéi ruì diǎn mysqlAB gōng sī, zài 2008 nián 1 yuè 16 hào bèi Sun gōng sī shōu gòu。 mysql bèi guǎng fàn dì yìng yòng zài Internet shàng de zhōng xiǎo xíng wǎng zhàn zhōng。 yóu yú qí tǐ jī xiǎo、 sù dù kuài、 zǒng tǐ yōng yòu chéng běn dī, yóu qí shì kāi fàng yuán mǎ zhè yī tè diǎn, xǔ duō zhōng xiǎo xíng wǎng zhàn wèile jiàng dī wǎng zhàn zǒng tǐ yōng yòu chéng běn 'ér xuǎn zé liǎo mysql zuò wéi wǎng zhàn shù jù kù。
mysql zuì chū de kāi fā zhě de yì tú shì yòng mSQL hé tā men zì jǐ de kuài sù dī jí lì chéng (ISAM) qù lián jiē biǎo gé。 bù guǎn zěn yàng, zài jīng guò yī xiē cè shì hòu, kāi fā zhě dé chū jié lùn: mSQL bìng méi yòu tā men xū yào de nà me kuài hé líng huó。 zhè dǎo zhì liǎo yī gè shǐ yòng jīhū hé mSQL yī yàng de API jiē kǒu de yòng yú tā men de shù jù kù de xīn de SQL jiē kǒu de chǎn shēng, zhè yàng, zhè gè API bèi shè jì chéng yǔn xǔ wéi yòng yú mSQL 'ér xiě de dì sān fāng dài mǎ gèng róng yì yí zhí dào mysql。
mysql zhè gè míng zì shì zěn me lái de yǐ jīng bù qīng chǔ liǎo。 jī běn zhǐ nán hé dà liàng de kù hé gōng jù dài yòu qián zhuì“ my” yǐ jīng yòu 10 nián yǐ shàng, ér qiě bù guǎn zěn yàng, mysqlAB chuàng shǐ rén zhī yī de MontyWidenius de nǚ 'ér yě jiào My。 zhè liǎng gè dào dǐ shì nǎ yī gè gěi chū liǎo mysql zhè gè míng zì zhì jīn yǐ rán shì gè mí, bāo kuò kāi fā zhě zài nèi yě bù zhī dào。
mysql de hǎi tún biāo zhì de míng zì jiào“ sakila”, tā shì yóu mysqlAB de chuàng shǐ rén cóng yòng hù zài“ hǎi tún mìng míng” de jìng sài zhōng jiàn yì de dà liàng de míng zì biǎo zhòngxuǎn chū de。 huò shèng de míng zì shì yóu lái zì fēi zhōu sī wēi shì lán de kāi yuán ruǎn jiàn kāi fā zhě AmbroseTwebaze tí gōng。 gēn jù Ambrose suǒ shuō, Sakila lái zì yī zhǒng jiào SiSwati de sī wēi shì lán fāng yán, yě shì zài Ambrose de jiā xiāng wū gān dá fù jìn de tǎn sāng ní yà de Arusha de yī gè xiǎo zhèn de míng zì。 |
|
mysql shì yī gè xiǎo xíng guān xì xíng shù jù kù guǎn lǐ xì tǒng, kāi fā zhě wéi ruì diǎn mysqlAB gōng sī。 zài 2008 nián 1 yuè 16 hào bèi Sun gōng sī shōu gòu。 ér 2009 nián ,SUN yòu bèi Oracal shōu gòu . duì yú mysql de qián tú , méi yòu rèn hé rén bào lè guān de tài dù . mù qián mysql bèi guǎng fàn dì yìng yòng zài Internet shàng de zhōng xiǎo xíng wǎng zhàn zhōng。 yóu yú qí tǐ jī xiǎo、 sù dù kuài、 zǒng tǐ yōng yòu chéng běn dī, yóu qí shì kāi fàng yuán mǎ zhè yī tè diǎn, xǔ duō zhōng xiǎo xíng wǎng zhàn wèile jiàng dī wǎng zhàn zǒng tǐ yōng yòu chéng běn 'ér xuǎn zé liǎo mysql zuò wéi wǎng zhàn shù jù kù。 mysql de guān fāng wǎng zhàn de wǎng zhǐ shì: www.mysql.com |
Mysql zuì cháng jiàn de yìng yòng jià gòu |
dān diǎn( Single), shì hé xiǎo guī mó yìng yòng
fù zhì( Replication), shì hé zhōng xiǎo guī mó yìng yòng
jí qún( Cluster), shì hé dà guī mó yìng yòng
mysql gōng sī zài tóng shí kāi fā liǎng gè bǎn běn de ruǎn jiàn, 4.1 bǎn yǐ jí 5.0 bǎn。 4.1 bǎn běn de dài mǎ yǐ jīng fā bù bìng yòu wàng zài 8 gè yuè hòu gōng bù zuì zhōng dài mǎ。 ér 5.0 bǎn běn de zuì hòu chǎn pǐn jiāng zài 6 gè yuè hòu fā bù。
mysql4.1 bǎn běn zhōng zēng jiā liǎo bù shǎo xīn de xìng néng, bāo kuò duì zhù jiàn de gèng gāo sù dù de huǎn cún, duì zǐ chá xún de gèng hǎo de zhī chí, yǐ jí yìng wǎng luò yuē huì wǎng zhàn suǒ yào qiú de, jī yú dì lǐ xìn xī de chá xún。
qí tóng bù kāi fā de 5.0 bǎn běn zé bǎ mù biāo duì zhǔn liǎo qǐ yè yòng hù, duì yú 4.1 bǎn běn zhōng de suǒ yòu xīn tè xìng, 5.0 bǎn běn xī shù shōu rù náng zhōng, bìng qiě dú jù yǐ xià tè diǎn: duì wài jiàn de liáng hǎo zhī chí; xì tǒng zì dòng bào cuò jī zhì yǐ jí duì cún chǔ guò chéng de chōng fēn zhī chí。 |
MySQL de suǒ yǐn wén jiàn jiè shào |
suǒ yǐn shì yī zhǒng tè shū de wén jiàn( InnoDB shù jù biǎo shàng de suǒ yǐn shì biǎo kōng jiān de yī gè zǔ chéng bù fēn), tā men bāo hán zhe duì shù jù biǎo lǐ suǒ yòu jì lù de yǐn yòng zhǐ zhēn。 suǒ yǐn bù shì wàn néng de, suǒ yǐn kě yǐ jiā kuài shù jù jiǎn suǒ cāo zuò, dàn huì shǐ shù jù xiū gǎi cāo zuò biàn màn。 měi xiū gǎi shù jù jì lù, suǒ yǐn jiù bì xū shuà xīn yī cì。 wèile zài mǒu zhǒng chéng xù shàng mí bǔ zhè yī quē xiàn, xǔ duō SQL mìng lìng dōuyòu yī gè DELAY_KEY_WRITE xiàng。 zhè gè xuǎn xiàng de zuò yòng shì zàn shí zhì zhǐ mysql zài gāi mìng lìng měi chā rù yī tiáo xīn jì lù hé měi xiū gǎi yī tiáo xiàn yòu zhī hòu lì kè duì suǒ yǐn jìn xíng shuà xīn, duì suǒ yǐn de shuà xīn jiāng děng dào quán bù jì lù chā rù / xiū gǎi wán bì zhī hòu zài jìn xíng。 zài xū yào bǎ xǔ duō xīn jì lù chā rù mǒu gè shù jù biǎo de chǎng hé, DELAY_KEY_WRITE xuǎn xiàng de zuò yòng jiāng fēi cháng míng xiǎn。 lìng wài, suǒ yǐn hái huì zài yìng pán shàng zhàn yòng xiāng dāng dà de kōng jiān。 yīn cǐ yīnggāi zhǐ wéi zuì jīng cháng chá xún hé zuì jīng cháng pái xù de shù jù liè jiàn lì suǒ yǐn。 zhù yì, rú guǒ mǒu gè shù jù liè bāo hán xǔ duō chóngfù de nèi róng, wéi tā jiàn lì suǒ yǐn jiù méi yòu tài dà de shí jì xiào guǒ。
cóng lǐ lùn shàng jiǎng, wán quán kě yǐ wéi shù jù biǎo lǐ de měi gè zì duàn fēn bié jiàn yī gè suǒ yǐn, dàn mysql bǎ tóng yī gè shù jù biǎo lǐ de suǒ yǐn zǒng shù xiàn zhì wéi 16 gè。
1、 InnoDB shù jù biǎo de suǒ yǐn
yǔ InnoDB shù jù biǎo xiāng bǐ, zài InnoDB shù jù biǎo shàng, suǒ yǐn duì InnoDB shù jù biǎo de zhòng yào xìng yào zài dé duō。 zài InnoDB shù jù biǎo shàng, suǒ yǐn bù jǐn huì zài sōu suǒ shù jù jì lù shí fā huī zuò yòng, hái shì shù jù xíng jí suǒ dìng jī zhì de 'ě、 jī chǔ。“ shù jù xíng jí suǒ dìng” de yì sī shì zhǐ zài shì wù cāo zuò de zhí xíng guò chéng zhōng suǒ dìng zhèng zài bèi chǔlǐ de gè bié jì lù, bù ràng qí tā yòng hù jìn xíng fǎng wèn。 zhè zhǒng suǒ dìng jiāng yǐng xiǎng dào( dàn bù xiàn yú) SELECT、 LOCKINSHAREMODE、 SELECT、 FORUPDATE mìng lìng yǐ jí INSERT、 UPDATE hé DELETE mìng lìng。 chū yú xiàolǜ fāng miàn de kǎo lǜ, InnoDB shù jù biǎo de shù jù xíng jí suǒ dìng shí jì fā shēng zài tā men de suǒ yǐn shàng, ér bù shì shù jù biǎo zì shēn shàng。 xiǎn rán, shù jù xíng jí suǒ dìng jī zhì zhǐ yòu zài yòu guān de shù jù biǎo yòu yī gè hé shì de suǒ yǐn kě gōng suǒ dìng de shí hòu cái néng fā huī xiào lì。
2、 xiàn zhì
rú guǒ WEHERE zǐ jù de chá xún tiáo jiàn lǐ yòu bù děng hào( WHEREcoloum!=), mysql jiāng wú fǎ shǐ yòng suǒ yǐn。 lèi sì dì, rú guǒ WHERE zǐ jù de chá xún tiáo jiàn lǐ shǐ yòng liǎo hán shù( WHEREDAY( column) =), mysql yě jiāng wú fǎ shǐ yòng suǒ yǐn。 zài JOIN cāo zuò zhōng( xū yào cóng duō gè shù jù biǎo tí qǔ shù jù shí), mysql zhǐ yòu zài zhù jiàn hé wài jiàn de shù jù lèi xíng xiāng tóng shí cái néng shǐ yòng suǒ yǐn。
rú guǒ WHERE zǐ jù de chá xún tiáo jiàn lǐ shǐ yòng bǐ jiào cāo zuò fú LIKE hé REGEXP, mysql zhǐ yòu zài sōu suǒ múbǎn de dì yī gè zì fú bù shì tōng pèi fú de qíng kuàng xià cái néng shǐ yòng suǒ yǐn。 bǐ rú shuō, rú guǒ chá xún tiáo jiàn shì LIKE'abc% ‘, mysql jiāng shǐ yòng suǒ yǐn; rú guǒ chá xún tiáo jiàn shì LIKE'%abc ’, mysql jiāng bù shǐ yòng suǒ yǐn。
zài ORDERBY cāo zuò zhōng, mysql zhǐ yòu zài pái xù tiáo jiàn bù shì yī gè chá xún tiáo jiàn biǎo dá shì de qíng kuàng xià cái shǐ yòng suǒ yǐn。( suī rán rú cǐ, zài shè jí duō gè shù jù biǎo chá xún lǐ, jí shǐ yòu suǒ yǐn kě yòng, nà xiē suǒ yǐn zài jiā kuài ORDERBY fāng miàn yě méi shénme zuò yòng)。 rú guǒ mǒu gè shù jù liè lǐ bāo hán xǔ duō chóngfù de zhí, jiù suàn wéi tā jiàn lì liǎo suǒ yǐn yě bù huì yòu hěn hǎo de xiào guǒ。 bǐ rú shuō, rú guǒ mǒu gè shù jù liè lǐ bāo hán de jìng shì xiē zhū rú“ 0/1” huò“ Y/N” děng zhí, jiù méi yòu bì yào wéi tā chuàng jiàn yī gè suǒ yǐn。
mysql pǔ tōng suǒ yǐn、 wéi yī suǒ yǐn hé zhù suǒ yǐn
1、 pǔ tōng suǒ yǐn
pǔ tōng suǒ yǐn( yóu guān jiàn zì KEY huò INDEX dìng yì de suǒ yǐn) de wéi yī rèn wù shì jiā kuài duì shù jù de fǎng wèn sù dù。 yīn cǐ, yīnggāi zhǐ wéi nà xiē zuì jīng cháng chū xiàn zài chá xún tiáo jiàn( WHEREcolumn=) huò pái xù tiáo jiàn( ORDERBYcolumn) zhōng de shù jù liè chuàng jiàn suǒ yǐn。 zhǐ yào yòu kě néng, jiù yīnggāi xuǎn zé yī gè shù jù zuì zhěng qí、 zuì jǐn còu de shù jù liè( rú yī gè zhěng shù lèi xíng de shù jù liè) lái chuàng jiàn suǒ yǐn。
2、 wéi yī suǒ yǐn
pǔ tōng suǒ yǐn yǔn xǔ bèi suǒ yǐn de shù jù liè bāo hán chóngfù de zhí。 bǐ rú shuō, yīn wéi rén yòu kě néng tóng míng, suǒ yǐ tóng yī gè xìng míng zài tóng yī gè“ yuán gōng gè rén zī liào” shù jù biǎo lǐ kě néng chū xiàn liǎng cì huò gèng duō cì。
rú guǒ néng què dìng mǒu gè shù jù liè jiāng zhǐ bāo hán bǐ cǐ gè bù xiāng tóng de zhí, zài wéi zhè gè shù jù liè chuàng jiàn suǒ yǐn de shí hòu jiù yīnggāi yòng guān jiàn zì UNIQUE bǎ tā dìng yì wéi yī gè wéi yī suǒ yǐn。 zhè me zuò de hǎo chù: yī shì jiǎn huà liǎo mysql duì zhè gè suǒ yǐn de guǎn lǐ gōng zuò, zhè gè suǒ yǐn yě yīn cǐ 'ér biàn dé gèng yòu xiàolǜ; èr shì mysql huì zài yòu xīn jì lù chā rù shù jù biǎo shí, zì dòng jiǎn chá xīn jì lù de zhè gè zì duàn de zhí shì fǒu yǐ jīng zài mǒu gè jì lù de zhè gè zì duàn lǐ chū xiàn guò liǎo; rú guǒ shì, mysql jiāng jù jué chā rù nà tiáo xīn jì lù。 yě jiù shì shuō, wéi yī suǒ yǐn kě yǐ bǎo zhèng shù jù jì lù de wéi yī xìng。 shì shí shàng, zài xǔ duō chǎng hé, rén men chuàng jiàn wéi yī suǒ yǐn de mùdì wǎng wǎng bù shì wèile tí gāo fǎng wèn sù dù, ér zhǐ shì wèile bì miǎn shù jù chū xiàn chóngfù。
3、 zhù suǒ yǐn
zài qián miàn yǐ jīng fǎn fù duō cì qiáng diào guò: bì xū wéi zhù jiàn zì duàn chuàng jiàn yī gè suǒ yǐn, zhè gè suǒ yǐn jiù shì suǒ wèi de“ zhù suǒ yǐn”。 zhù suǒ yǐn yǔ wéi yī suǒ yǐn de wéi yī qū bié shì: qián zhě zài dìng yì shí shǐ yòng de guān jiàn zì shì PRIMARY 'ér bù shì UNIQUE。
4、 wài jiàn suǒ yǐn
rú guǒ wéi mǒu gè wài jiàn zì duàn dìng yì liǎo yī gè wài jiàn yuē shù tiáo jiàn, mysql jiù huì dìng yì yī gè nèi bù suǒ yǐn lái bāng zhù zì jǐ yǐ zuì yòu xiàolǜ de fāng shì qù guǎn lǐ hé shǐ yòng wài jiàn yuē shù tiáo jiàn。
5、 fù hé suǒ yǐn
suǒ yǐn kě yǐ fù gài duō gè shù jù liè, rú xiàng INDEX( columnA, columnB) suǒ yǐn。 zhè zhǒng suǒ yǐn de tè diǎn shì mysql kě yǐ yòu xuǎn zé dì shǐ yòng yī gè zhè yàng de suǒ yǐn。 rú guǒ chá xún cāo zuò zhǐ xū yào yòng dào columnA shù jù liè shàng de yī gè suǒ yǐn, jiù kě yǐ shǐ yòng fù hé suǒ yǐn INDEX( columnA,columnB)。 bù guò, zhè zhǒng yòng fǎ jǐn shì yòng yú zài fù hé suǒ yǐn zhōng pái liè zài qián de shù jù liè zǔ hé。 bǐ rú shuō, INDEX( A, B, C) kě yǐ dàngzuò A huò( A,B) de suǒ yǐn lái shǐ yòng, dàn bù néng dàngzuò B、 C huò( B, C) de suǒ yǐn lái shǐ yòng。
6、 suǒ yǐn de cháng dù
zài wéi CHAR hé VARCHAR lèi xíng de shù jù liè dìng yì suǒ yǐn shí, kě yǐ bǎ suǒ yǐn de cháng dù xiàn zhì wéi yī gè gěi dìng de zì fú gè shù( zhè gè shù zì bì xū xiǎo yú zhè gè zì duàn suǒ yǔn xǔ de zuì dà zì fú gè shù)。 zhè me zuò de hǎo chù shì kě yǐ shēng chéng yī gè chǐ cùn bǐ jiào xiǎo、 jiǎn suǒ sù dù què bǐ jiào kuài de suǒ yǐn wén jiàn。 zài jué dà duō shù yìng yòng lǐ, shù jù kù zhōng de zì fú chuàn shù jù dà dū yǐ gè zhǒng gè yàng de míng zì wéi zhù, bǎ suǒ yǐn de cháng dù shè zhì wéi 10~15 gè zì fú yǐ jīng zú yǐ bǎ sōu suǒ fàn wéi suō xiǎo dào hěn shǎo de jǐ tiáo shù jù jì lù liǎo。 zài wéi BLOB hé TEXT lèi xíng de shù jù liè chuàng jiàn suǒ yǐn shí, bì xū duì suǒ yǐn de cháng dù zuò chū xiàn zhì; mysql suǒ yǔn xǔ de zuì dà suǒ yǐn quán wén suǒ yǐn wén běn zì duàn shàng de pǔ tōng suǒ yǐn zhǐ néng jiā kuài duì chū xiàn zài zì duàn nèi róng zuì qián miàn de zì fú chuàn( yě jiù shì zì duàn nèi róng kāi tóu de zì fú) jìn xíng jiǎn suǒ cāo zuò。 rú guǒ zì duàn lǐ cún fàng de shì yóu jǐ gè、 shèn zhì shì duō gè dān cí gòu chéng de jiào dà duàn wén zì, pǔ tōng suǒ yǐn jiù méi shénme zuò yòng liǎo。 zhè zhǒng jiǎn suǒ wǎng wǎng yǐ de xíng shì chū xiàn, zhè duì mysql lái shuō hěn fù zá, rú guǒ xū yào chǔlǐ de shù jù liàng hěn dà, xiǎng yìng shí jiān jiù huì hěn cháng。
zhè lèi chǎng hé zhèng shì quán wén suǒ yǐn( full-textindex) kě yǐ dà xiǎn shēn shǒu de dì fāng。 zài shēng chéng zhè zhǒng lèi xíng de suǒ yǐn shí, mysql jiāng bǎ zài wén běn zhōng chū xiàn de suǒ yòu dān cí chuàng jiàn wéi yī fèn qīng dān, chá xún cāo zuò jiāng gēn jù zhè fèn qīng dān qù jiǎn suǒ yòu guān de shù jù jì lù。 quán wén suǒ yǐn jí kě yǐ suí shù jù biǎo yī tóng chuàng jiàn, yě kě yǐ děng rì hòu yòu bì yào shí zài shǐ yòng xià miàn zhè tiáo mìng lìng tiān jiā:
ALTERTABLEtablenameADDFULLTEXT( column1, column2) yòu liǎo quán wén suǒ yǐn, jiù kě yǐ yòng SELECT chá xún mìng lìng qù jiǎn suǒ nà xiē bāo hán zhe yī gè huò duō gè gěi dìng dān cí de shù jù jì lù liǎo。 xià miàn shì zhè lèi chá xún mìng lìng de jī běn yǔ fǎ:
SELECT*FROMtablename
WHEREMATCH( column1,column2) AGAINST(‘ word1','word2','word3’)
shàng miàn zhè tiáo mìng lìng jiāng bǎ column1 hé column2 zì duàn lǐ yòu word1、 word2 hé word3 de shù jù jì lù quán bù chá xún chū lái。
zhù jiě: InnoDB shù jù biǎo bù zhī chí quán wén suǒ yǐn。 |
|
chá xún hé suǒ yǐn de yōu huà
zhǐ yòu dāng shù jù kù lǐ yǐ jīng yòu liǎo zú gòu duō de cè shì shù jù shí, tā de xìng néng cè shì jiēguǒ cái yòu shí jì cān kǎo jià zhí。 rú guǒ zài cè shì shù jù kù lǐ zhǐ yòu jǐ bǎi tiáo shù jù jì lù, tā men wǎng wǎng zài zhí xíng wán dì yī tiáo chá xún mìng lìng zhī hòu jiù bèi quán bù jiā zài dào nèi cún lǐ, zhè jiāng shǐ hòu xù de chá xún mìng lìng dū zhí xíng dé fēi cháng kuài -- bù guǎn yòu méi yòu shǐ yòng suǒ yǐn。 zhǐ yòu dāng shù jù kù lǐ de jì lù chāo guò liǎo 1000 tiáo、 shù jù zǒng liàng yě chāo guò liǎo mysql fú wù qì shàng de nèi cún zǒng liàng shí, shù jù kù de xìng néng cè shì jiēguǒ cái yòu yì yì。
zài bù què dìng yīnggāi zài nǎ xiē shù jù liè shàng chuàng jiàn suǒ yǐn de shí hòu, rén men cóng EXPLAINSELECT mìng lìng nà lǐ wǎng wǎng kě yǐ huò dé yī xiē bāng zhù。 zhè qí shí zhǐ shì jiǎn dān dì gěi yī tiáo pǔ tōng de SELECT mìng lìng jiā yī gè EXPLAIN guān jiàn zì zuò wéi qián zhuì 'ér yǐ。 yòu liǎo zhè gè guān jiàn zì, mysql jiāng bù shì qù zhí xíng nà tiáo SELECT mìng lìng, ér shì qù duì tā jìn xíng fēn xī。 mysql jiāng yǐ biǎo gé de xíng shì bǎ chá xún de zhí xíng guò chéng hé yòng dào de suǒ yǐn děng xìn xī liè chū lái。
zài EXPLAIN mìng lìng de shū chū jiēguǒ lǐ, dì 1 liè shì cóng shù jù kù dú qǔ de shù jù biǎo de míng zì, tā men 'àn bèi dú qǔ de xiān hòu shùn xù pái liè。 type liè zhǐ dìng liǎo běn shù jù biǎo yǔ qí tā shù jù biǎo zhī jiān de guān lián guān xì( JOIN)。 zài gè zhǒng lèi xíng de guān lián guān xì dāng zhōng, xiàolǜ zuì gāo de shì system, rán hòu yǐ cì shì const、 eq_ref、 ref、 range、 index hé All( All de yì sī shì: duì yìng yú shàng yī jí shù jù biǎo lǐ de měi yī tiáo jì lù, zhè gè shù jù biǎo lǐ de suǒ yòu jì lù dū bì xū bèi dú qǔ yī biàn héng héng zhè zhǒng qíng kuàng wǎng wǎng kě yǐ yòng yī suǒ yǐn lái bì miǎn)。
possible_keys shù jù liè gěi chū liǎo mysql zài sōu suǒ shù jù jì lù shí kě xuǎn yòng de gè gè suǒ yǐn。 key shù jù liè shì mysql shí jì xuǎn yòng de suǒ yǐn, zhè gè suǒ yǐn 'àn zì jié jì suàn de cháng dù zài key_len shù jù liè lǐ gěi chū。 bǐ rú shuō, duì yú yī gè INTEGER shù jù liè de suǒ yǐn, zhè gè zì jié cháng dù jiāng shì 4。 rú guǒ yòng dào liǎo fù hé suǒ yǐn, zài key_len shù jù liè lǐ hái kě yǐ kàn dào mysql jù tǐ shǐ yòng liǎo tā de nǎ xiē bù fēn。 zuò wéi yī bān guī lǜ, key_len shù jù liè lǐ de zhí yuè xiǎo yuè hǎo。
ref shù jù liè gěi chū liǎo guān lián guān xì zhōng lìng yī gè shù jù biǎo lǐ de shù jù liè de míng zì。 row shù jù liè shì mysql zài zhí xíng zhè gè chá xún shí yù jì huì cóng zhè gè shù jù biǎo lǐ dú chū de shù jù xíng de gè shù。 row shù jù liè lǐ de suǒ yòu shù zì de chéng jī kě yǐ dà zhì liǎo jiě zhè gè chá xún xū yào chǔlǐ duō shǎo zǔ hé。
zuì hòu, extra shù jù liè tí gōng liǎo yǔ JOIN cāo zuò yòu guān de gèng duō xìn xī, bǐ rú shuō, rú guǒ mysql zài zhí xíng zhè gè chá xún shí bì xū chuàng jiàn yī gè lín shí shù jù biǎo, jiù huì zài extra liè kàn dào usingtemporary zì yàng。
mysql- ān zhuāng zhù yì
mysql 'ān zhuāng zhù yì 1、 rú guǒ shì yòng mysql+Apache, shǐ yòng de yòu shì FreeBSD wǎng lù cāo zuò xì tǒng de huà, ān zhuāng shí hòu nǐ yìng 'àn zhù yì dào FreeBSD de bǎn běn wèn tí, zài FreeBSD de 3.0 yǐ xià bǎn běn lái shuō, mysqlSource nèi hán de MIT-pthread yùn xíng shì zhèng cháng de, dàn zài zhè bǎn běn yǐ shàng, nǐ bì xū shǐ yòng nativethreads, yě jiù shì jiā rù yī gè with-named-thread-libs=-lc_r de xuǎn xiàng。
2、 rú guǒ zài COMPILE guò chéng zhōng chū liǎo wèn tí, qǐng xiān jiǎn chá nǐ de gcc bǎn běn shì fǒu zài 2.81 bǎn běn yǐ shàng, gmake bǎn běn shì fǒu zài 3.75 yǐ shàng。
3、 rú guǒ bù shì bǎn běn de wèn tí, nà kě néng shì nǐ de nèi cún bù zú, qǐng shǐ yòng ./configure--with-low-memory lái jiā rù。
4、 rú guǒ yào zhòng xīn zuò nǐ de configure, nà me nǐ kě yǐ jiàn rù rmconfig.cache hé makeclean lái qīng chú jì lù。
5、 bǎ mysql 'ān zhuāng zài /usr/local mù lù xià, zhè shì quē shěng zhí, nín yě kě yǐ 'àn zhào nǐ de xū yào shè dìng nǐ suǒ 'ān zhuāng de mù lù。 |
|
mysql gōng sī mù qián zài tóng shí kāi fā liǎng gè bǎn běn de ruǎn jiàn, 4.1 bǎn yǐ jí 5.0 bǎn。 4.1 bǎn běn de dài mǎ yǐ jīng fā bù bìng yòu wàng zài 8 gè yuè hòu gōng bù zuì zhōng dài mǎ。 ér 5.0 bǎn běn de zuì hòu chǎn pǐn jiāng zài 6 gè yuè hòu fā bù。
mysql4.1 bǎn běn zhōng zēng jiā liǎo bù shǎo xīn de xìng néng, bāo kuò duì zhù jiàn de gèng gāo sù dù de huǎn cún, duì zǐ chá xún de gèng hǎo de zhī chí, yǐ jí yìng wǎng luò yuē huì wǎng zhàn suǒ yào qiú de, jī yú dì lǐ xìn xī de chá xún。
ér qí tóng bù kāi fā de 5.0 bǎn běn zé bǎ mù biāo duì zhǔn liǎo qǐ yè yòng hù, duì yú 4.1 bǎn běn zhōng de suǒ yòu xīn tè xìng, 5.0 bǎn běn xī shù shōu rù náng zhōng, bìng qiě dú jù yǐ xià tè diǎn: duì wài jiàn de liáng hǎo zhī chí; xì tǒng zì dòng bào cuò jī zhì yǐ jí duì cún chǔ guò chéng de chōng fēn zhī chí。
2009 nián chū .mysql5.4 bǎn yù lǎn běn yǐ fàng chū . |
MySQL de jī běn mìng lìng |
[ ] zhōng de nèi róng wéi kě xuǎn xiàng
-- chuàng jiàn shù jù kù
mysql>createdatabase shù jù kù míng chēng
-- chuàng jiàn biǎo
mysql>createtable biǎo míng (
liè de míng zì( id) lèi xíng( int( 4)) primarykey( dìng yì zhù jiàn )auto_increment( miáo shù zì zēng) ,
……,
);
-- chá kàn suǒ yòu shù jù kù
mysql>showdatabases shù jù kù míng chēng ;
-- shǐ yòng mǒu gè shù jù kù
mysql>usedatabase shù jù kù míng chēng ;
-- chá kàn suǒ shǐ yòng shù jù kù xià suǒ yòu de biǎo
mysql>showtables;
-- xiǎn shì biǎo de shǔ xìng jié gòu
mysql>desc biǎo míng ;
-- xuǎn zé biǎo zhōng shù jù de xiǎn shì
--* dài biǎo xuǎn zé suǒ yòu liè,
mysql>select*from biǎo míng whereid=?[andname=? ][orname=?];
mysql>selectid,namefrom biǎo míng orderby mǒu yī liè de míng chēng desc( jiàng xù, asc wéi shēng xù )
-- shān chú biǎo zhōng de shù jù
mysql>deletefromtablewhereid=? [orname=?(andname=?)];
-- shān chú biǎo
mysql>droptable;
-- shān chú shù jù kù
mysql>dropdatabase;
suǒ yǐn shì yī zhǒng tè shū de wén jiàn (InnoDB shù jù biǎo shàng de suǒ yǐn shì biǎo kōng jiān de yī gè zǔ chéng bù fēn ), tā men bāo hán zhe duì shù jù biǎo lǐ suǒ yòu jì lù de yǐn yòng zhǐ zhēn。
zhù: suǒ yǐn bù shì wàn néng de! suǒ yǐn kě yǐ jiā kuài shù jù jiǎn suǒ cāo zuò, dàn huì shǐ shù jù xiū gǎi cāo zuò biàn màn。 měi xiū gǎi shù jù jì lù, suǒ yǐn jiù bì xū shuà xīn yī cì。 wèile zài mǒu zhǒng chéng xù shàng mí bǔ zhè yī quē xiàn, xǔ duō SQL mìng lìng dōuyòu yī gè DELAY_KEY_WRITE xiàng。 zhè gè xuǎn xiàng de zuò yòng shì zàn shí zhì zhǐ mysql zài gāi mìng lìng měi chā rù yī tiáo xīn jì lù hé měi xiū gǎi yī tiáo xiàn yòu zhī hòu lì kè duì suǒ yǐn jìn xíng shuà xīn, duì suǒ yǐn de shuà xīn jiāng děng dào quán bù jì lù chā rù / xiū gǎi wán bì zhī hòu zài jìn xíng。 zài xū yào bǎ xǔ duō xīn jì lù chā rù mǒu gè shù jù biǎo de chǎng hé, DELAY_KEY_WRITE xuǎn xiàng de zuò yòng jiāng fēi cháng míng xiǎn。 lìng wài, suǒ yǐn hái huì zài yìng pán shàng zhàn yòng xiāng dāng dà de kōng jiān。 yīn cǐ yīnggāi zhǐ wéi zuì jīng cháng chá xún hé zuì jīng cháng pái xù de shù jù liè jiàn lì suǒ yǐn。 zhù yì, rú guǒ mǒu gè shù jù liè bāo hán xǔ duō chóngfù de nèi róng, wéi tā jiàn lì suǒ yǐn jiù méi yòu tài dà de shí jì xiào guǒ。
cóng lǐ lùn shàng jiǎng, wán quán kě yǐ wéi shù jù biǎo lǐ de měi gè zì duàn fēn bié jiàn yī gè suǒ yǐn, dàn mysql bǎ tóng yī gè shù jù biǎo lǐ de suǒ yǐn zǒng shù xiàn zhì wéi 16 gè。
1.InnoDB shù jù biǎo de suǒ yǐn
yǔ MyISAM shù jù biǎo xiāng bǐ, zài InnoDB shù jù biǎo shàng, suǒ yǐn duì InnoDB shù jù biǎo de zhòng yào xìng yào zài dé duō。 zài InnoDB shù jù biǎo shàng, suǒ yǐn bù jǐn huì zài sōu suǒ shù jù jì lù shí fā huī zuò yòng, hái shì shù jù xíng jí suǒ dìng jī zhì de 'ě、 jī chǔ。 " shù jù xíng jí suǒ dìng " de yì sī shì zhǐ zài shì wù cāo zuò de zhí xíng guò chéng zhōng suǒ dìng zhèng zài bèi chǔlǐ de gè bié jì lù, bù ràng qí tā yòng hù jìn xíng fǎng wèn。 zhè zhǒng suǒ dìng jiāng yǐng xiǎng dào ( dàn bù xiàn yú )SELECT...LOCKINSHAREMODE、 SELECT...FORUPDATE mìng lìng yǐ jí INSERT、 UPDATE hé DELETE mìng lìng。
chū yú xiàolǜ fāng miàn de kǎo lǜ, InnoDB shù jù biǎo de shù jù xíng jí suǒ dìng shí jì fā shēng zài tā men de suǒ yǐn shàng, ér bù shì shù jù biǎo zì shēn shàng。 xiǎn rán, shù jù xíng jí suǒ dìng jī zhì zhǐ yòu zài yòu guān de shù jù biǎo yòu yī gè hé shì de suǒ yǐn kě gōng suǒ dìng de shí hòu cái néng fā huī xiào lì。
2. xiàn zhì
rú guǒ WEHERE zǐ jù de chá xún tiáo jiàn lǐ yòu bù děng hào (WHEREcoloum!=...), mysql jiāng wú fǎ shǐ yòng suǒ yǐn。
lèi sì dì, rú guǒ WHERE zǐ jù de chá xún tiáo jiàn lǐ shǐ yòng liǎo hán shù (WHEREDAY(column)=...), mysql yě jiāng wú fǎ shǐ yòng suǒ yǐn。
zài JOIN cāo zuò zhōng ( xū yào cóng duō gè shù jù biǎo tí qǔ shù jù shí ), mysql zhǐ yòu zài zhù jiàn hé wài jiàn de shù jù lèi xíng xiāng tóng shí cái néng shǐ yòng suǒ yǐn。
rú guǒ WHERE zǐ jù de chá xún tiáo jiàn lǐ shǐ yòng bǐ jiào cāo zuò fú LIKE hé REGEXP, mysql zhǐ yòu zài sōu suǒ múbǎn de dì yī gè zì fú bù shì tōng pèi fú de qíng kuàng xià cái néng shǐ yòng suǒ yǐn。 bǐ rú shuō, rú guǒ chá xún tiáo jiàn shì LIKE'abc%', mysql jiāng shǐ yòng suǒ yǐn; rú guǒ chá xún tiáo jiàn shì LIKE'%abc', mysql jiāng bù shǐ yòng suǒ yǐn。
zài ORDERBY cāo zuò zhōng, mysql zhǐ yòu zài pái xù tiáo jiàn bù shì yī gè chá xún tiáo jiàn biǎo dá shì de qíng kuàng xià cái shǐ yòng suǒ yǐn。 ( suī rán rú cǐ, zài shè jí duō gè shù jù biǎo chá xún lǐ, jí shǐ yòu suǒ yǐn kě yòng, nà xiē suǒ yǐn zài jiā kuài ORDERBY fāng miàn yě méi shénme zuò yòng )
rú guǒ mǒu gè shù jù liè lǐ bāo hán xǔ duō chóngfù de zhí, jiù suàn wéi tā jiàn lì liǎo suǒ yǐn yě bù huì yòu hěn hǎo de xiào guǒ。 bǐ rú shuō, rú guǒ mǒu gè shù jù liè lǐ bāo hán de jìng shì xiē zhū rú "0/1" huò "Y/N" děng zhí, jiù méi yòu bì yào wéi tā chuàng jiàn yī gè suǒ yǐn。
pǔ tōng suǒ yǐn、 wéi yī suǒ yǐn hé zhù suǒ yǐn
1. pǔ tōng suǒ yǐn
pǔ tōng suǒ yǐn ( yóu guān jiàn zì KEY huò INDEX dìng yì de suǒ yǐn ) de wéi yī rèn wù shì jiā kuài duì shù jù de fǎng wèn sù dù。 yīn cǐ, yīnggāi zhǐ wéi nà xiē zuì jīng cháng chū xiàn zài chá xún tiáo jiàn (WHEREcolumn=...) huò pái xù tiáo jiàn (ORDERBYcolumn) zhōng de shù jù liè chuàng jiàn suǒ yǐn。 zhǐ yào yòu kě néng, jiù yīnggāi xuǎn zé yī gè shù jù zuì zhěng qí、 zuì jǐn còu de shù jù liè ( rú yī gè zhěng shù lèi xíng de shù jù liè ) lái chuàng jiàn suǒ yǐn。
2. wéi yī suǒ yǐn
pǔ tōng suǒ yǐn yǔn xǔ bèi suǒ yǐn de shù jù liè bāo hán chóngfù de zhí。 bǐ rú shuō, yīn wéi rén yòu kě néng tóng míng, suǒ yǐ tóng yī gè xìng míng zài tóng yī gè " yuán gōng gè rén zī liào " shù jù biǎo lǐ kě néng chū xiàn liǎng cì huò gèng duō cì。
rú guǒ néng què dìng mǒu gè shù jù liè jiāng zhǐ bāo hán bǐ cǐ gè bù xiāng tóng de zhí, zài wéi zhè gè shù jù liè chuàng jiàn suǒ yǐn de shí hòu jiù yīnggāi yòng guān jiàn zì UNIQUE bǎ tā dìng yì wéi yī gè wéi yī suǒ yǐn。 zhè me zuò de hǎo chù: yī shì jiǎn huà liǎo mysql duì zhè gè suǒ yǐn de guǎn lǐ gōng zuò, zhè gè suǒ yǐn yě yīn cǐ 'ér biàn dé gèng yòu xiàolǜ; èr shì mysql huì zài yòu xīn jì lù chā rù shù jù biǎo shí, zì dòng jiǎn chá xīn jì lù de zhè gè zì duàn de zhí shì fǒu yǐ jīng zài mǒu gè jì lù de zhè gè zì duàn lǐ chū xiàn guò liǎo; rú guǒ shì, mysql jiāng jù jué chā rù nà tiáo xīn jì lù。 yě jiù shì shuō, wéi yī suǒ yǐn kě yǐ bǎo zhèng shù jù jì lù de wéi yī xìng。 shì shí shàng, zài xǔ duō chǎng hé, rén men chuàng jiàn wéi yī suǒ yǐn de mùdì wǎng wǎng bù shì wèile tí gāo fǎng wèn sù dù, ér zhǐ shì wèile bì miǎn shù jù chū xiàn chóngfù。
3. zhù suǒ yǐn
zài qián miàn yǐ jīng fǎn fù duō cì qiáng diào guò: bì xū wéi zhù jiàn zì duàn chuàng jiàn yī gè suǒ yǐn, zhè gè suǒ yǐn jiù shì suǒ wèi de " zhù suǒ yǐn "。 zhù suǒ yǐn yǔ wéi yī suǒ yǐn de wéi yī qū bié shì: qián zhě zài dìng yì shí shǐ yòng de guān jiàn zì shì PRIMARY 'ér bù shì UNIQUE。
4. wài jiàn suǒ yǐn
rú guǒ wéi mǒu gè wài jiàn zì duàn dìng yì liǎo yī gè wài jiàn yuē shù tiáo jiàn, mysql jiù huì dìng yì yī gè nèi bù suǒ yǐn lái bāng zhù zì jǐ yǐ zuì yòu xiàolǜ de fāng shì qù guǎn lǐ hé shǐ yòng wài jiàn yuē shù tiáo jiàn。
5. fù hé suǒ yǐn
suǒ yǐn kě yǐ fù gài duō gè shù jù liè, rú xiàng INDEX(columnA,columnB) suǒ yǐn。 zhè zhǒng suǒ yǐn de tè diǎn shì mysql kě yǐ yòu xuǎn zé dì shǐ yòng yī gè zhè yàng de suǒ yǐn。 rú guǒ chá xún cāo zuò zhǐ xū yào yòng dào columnA shù jù liè shàng de yī gè suǒ yǐn, jiù kě yǐ shǐ yòng fù hé suǒ yǐn INDEX(columnA,columnB)。 bù guò, zhè zhǒng yòng fǎ jǐn shì yòng yú zài fù hé suǒ yǐn zhōng pái liè zài qián de shù jù liè zǔ hé。 bǐ rú shuō, INDEX(A,B,C) kě yǐ dàngzuò A huò (A,B) de suǒ yǐn lái shǐ yòng, dàn bù néng dàngzuò B、 C huò (B,C) de suǒ yǐn lái shǐ yòng。
6. suǒ yǐn de cháng dù
zài wéi CHAR hé VARCHAR lèi xíng de shù jù liè dìng yì suǒ yǐn shí, kě yǐ bǎ suǒ yǐn de cháng dù xiàn zhì wéi yī gè gěi dìng de zì fú gè shù ( zhè gè shù zì bì xū xiǎo yú zhè gè zì duàn suǒ yǔn xǔ de zuì dà zì fú gè shù )。 zhè me zuò de hǎo chù shì kě yǐ shēng chéng yī gè chǐ cùn bǐ jiào xiǎo、 jiǎn suǒ sù dù què bǐ jiào kuài de suǒ yǐn wén jiàn。 zài jué dà duō shù yìng yòng lǐ, shù jù kù zhōng de zì fú chuàn shù jù dà dū yǐ gè zhǒng gè yàng de míng zì wéi zhù, bǎ suǒ yǐn de cháng dù shè zhì wéi 10~15 gè zì fú yǐ jīng zú yǐ bǎ sōu suǒ fàn wéi suō xiǎo dào hěn shǎo de jǐ tiáo shù jù jì lù liǎo。
zài wéi BLOB hé TEXT lèi xíng de shù jù liè chuàng jiàn suǒ yǐn shí, bì xū duì suǒ yǐn de cháng dù zuò chū xiàn zhì; mysql suǒ yǔn xǔ de zuì dà suǒ yǐn jlkjljkjlj quán wén suǒ yǐn
wén běn zì duàn shàng de pǔ tōng suǒ yǐn zhǐ néng jiā kuài duì chū xiàn zài zì duàn nèi róng zuì qián miàn de zì fú chuàn ( yě jiù shì zì duàn nèi róng kāi tóu de zì fú ) jìn xíng jiǎn suǒ cāo zuò。 rú guǒ zì duàn lǐ cún fàng de shì yóu jǐ gè、 shèn zhì shì duō gè dān cí gòu chéng de jiào dà duàn wén zì, pǔ tōng suǒ yǐn jiù méi shénme zuò yòng liǎo。 zhè zhǒng jiǎn suǒ wǎng wǎng yǐ LIKE%word% de xíng shì chū xiàn, zhè duì mysql lái shuō hěn fù zá, rú guǒ xū yào chǔlǐ de shù jù liàng hěn dà, xiǎng yìng shí jiān jiù huì hěn cháng。
zhè lèi chǎng hé zhèng shì quán wén suǒ yǐn (full-textindex) kě yǐ dà xiǎn shēn shǒu de dì fāng。 zài shēng chéng zhè zhǒng lèi xíng de suǒ yǐn shí, mysql jiāng bǎ zài wén běn zhōng chū xiàn de suǒ yòu dān cí chuàng jiàn wéi yī fèn qīng dān, chá xún cāo zuò jiāng gēn jù zhè fèn qīng dān qù jiǎn suǒ yòu guān de shù jù jì lù。 quán wén suǒ yǐn jí kě yǐ suí shù jù biǎo yī tóng chuàng jiàn, yě kě yǐ děng rì hòu yòu bì yào shí zài shǐ yòng xià miàn zhè tiáo mìng lìng tiān jiā:
ALTERTABLEtablenameADDFULLTEXT(column1,column2)
yòu liǎo quán wén suǒ yǐn, jiù kě yǐ yòng SELECT chá xún mìng lìng qù jiǎn suǒ nà xiē bāo hán zhe yī gè huò duō gè gěi dìng dān cí de shù jù jì lù liǎo。 xià miàn shì zhè lèi chá xún mìng lìng de jī běn yǔ fǎ:
SELECT*FROMtablename
WHEREMATCH(column1,column2)AGAINST('word1','word2','word3')
shàng miàn zhè tiáo mìng lìng jiāng bǎ column1 hé column2 zì duàn lǐ yòu word1、 word2 hé word3 de shù jù jì lù quán bù chá xún chū lái。
zhù jiě: InnoDB shù jù biǎo bù zhī chí quán wén suǒ yǐn。
chá xún hé suǒ yǐn de yōu huà
zhǐ yòu dāng shù jù kù lǐ yǐ jīng yòu liǎo zú gòu duō de cè shì shù jù shí, tā de xìng néng cè shì jiēguǒ cái yòu shí jì cān kǎo jià zhí。 rú guǒ zài cè shì shù jù kù lǐ zhǐ yòu jǐ bǎi tiáo shù jù jì lù, tā men wǎng wǎng zài zhí xíng wán dì yī tiáo chá xún mìng lìng zhī hòu jiù bèi quán bù jiā zài dào nèi cún lǐ, zhè jiāng shǐ hòu xù de chá xún mìng lìng dū zhí xíng dé fēi cháng kuài -- bù guǎn yòu méi yòu shǐ yòng suǒ yǐn。 zhǐ yòu dāng shù jù kù lǐ de jì lù chāo guò liǎo 1000 tiáo、 shù jù zǒng liàng yě chāo guò liǎo mysql fú wù qì shàng de nèi cún zǒng liàng shí, shù jù kù de xìng néng cè shì jiēguǒ cái yòu yì yì。
zài bù què dìng yīnggāi zài nǎ xiē shù jù liè shàng chuàng jiàn suǒ yǐn de shí hòu, rén men cóng EXPLAINSELECT mìng lìng nà lǐ wǎng wǎng kě yǐ huò dé yī xiē bāng zhù。 zhè qí shí zhǐ shì jiǎn dān dì gěi yī tiáo pǔ tōng de SELECT mìng lìng jiā yī gè EXPLAIN guān jiàn zì zuò wéi qián zhuì 'ér yǐ。 yòu liǎo zhè gè guān jiàn zì, mysql jiāng bù shì qù zhí xíng nà tiáo SELECT mìng lìng, ér shì qù duì tā jìn xíng fēn xī。 mysql jiāng yǐ biǎo gé de xíng shì bǎ chá xún de zhí xíng guò chéng hé yòng dào de suǒ yǐn ( rú guǒ yòu de huà ) děng xìn xī liè chū lái。
zài EXPLAIN mìng lìng de shū chū jiēguǒ lǐ, dì 1 liè shì cóng shù jù kù dú qǔ de shù jù biǎo de míng zì, tā men 'àn bèi dú qǔ de xiān hòu shùn xù pái liè。 type liè zhǐ dìng liǎo běn shù jù biǎo yǔ qí tā shù jù biǎo zhī jiān de guān lián guān xì (JOIN)。 zài gè zhǒng lèi xíng de guān lián guān xì dāng zhōng, xiàolǜ zuì gāo de shì system, rán hòu yǐ cì shì const、 eq_ref、 ref、 range、 index hé All(All de yì sī shì: duì yìng yú shàng yī jí shù jù biǎo lǐ de měi yī tiáo jì lù, zhè gè shù jù biǎo lǐ de suǒ yòu jì lù dū bì xū bèi dú qǔ yī biàn -- zhè zhǒng qíng kuàng wǎng wǎng kě yǐ yòng yī suǒ yǐn lái bì miǎn )。
possible_keys shù jù liè gěi chū liǎo mysql zài sōu suǒ shù jù jì lù shí kě xuǎn yòng de gè gè suǒ yǐn。 key shù jù liè shì mysql shí jì xuǎn yòng de suǒ yǐn, zhè gè suǒ yǐn 'àn zì jié jì suàn de cháng dù zài key_len shù jù liè lǐ gěi chū。 bǐ rú shuō, duì yú yī gè INTEGER shù jù liè de suǒ yǐn, zhè gè zì jié cháng dù jiāng shì 4。 rú guǒ yòng dào liǎo fù hé suǒ yǐn, zài key_len shù jù liè lǐ hái kě yǐ kàn dào mysql jù tǐ shǐ yòng liǎo tā de nǎ xiē bù fēn。 zuò wéi yī bān guī lǜ, key_len shù jù liè lǐ de zhí yuè xiǎo yuè hǎo ( yì sī shì gèng kuài )。
ref shù jù liè gěi chū liǎo guān lián guān xì zhōng lìng yī gè shù jù biǎo lǐ de shù jù liè de míng zì。 row shù jù liè shì mysql zài zhí xíng zhè gè chá xún shí yù jì huì cóng zhè gè shù jù biǎo lǐ dú chū de shù jù xíng de gè shù。 row shù jù liè lǐ de suǒ yòu shù zì de chéng jī kě yǐ ràng wǒ men dà zhì liǎo jiě zhè gè chá xún xū yào chǔlǐ duō shǎo zǔ hé。
zuì hòu, extra shù jù liè tí gōng liǎo yǔ JOIN cāo zuò yòu guān de gèng duō xìn xī, bǐ rú shuō, rú guǒ mysql zài zhí xíng zhè gè chá xún shí bì xū chuàng jiàn yī gè lín shí shù jù biǎo, jiù huì zài extra liè kàn dào usingtemporary zì yàng |
ān zhuāng mysql shí hòu de zhù yì shì xiàng |
1、 rú guǒ nín shì yòng mysql+Apache, shǐ yòng de yòu shì FreeBSD wǎng lù cāo zuò xì tǒng de huà, ān zhuāng shí hòu nǐ yìng 'àn zhù yì dào FreeBSD de bǎn běn wèn tí, zài FreeBSD de 3.0 yǐ xià bǎn běn lái shuō。 mysqlSource nèi hán de MIT-pthread yùn xíng shì zhèng cháng de, dàn zài zhè bǎn běn yǐ shàng, nǐ bì xū shǐ yòng nativethreads, yě jiù shì jiā rù yī gè with-named-thread-libs=-lc_r de xuǎn xiàng。
2、 rú guǒ nín zài COMPILE guò chéng zhōng chū liǎo wèn tí, qǐng xiān jiǎn chá nǐ de gcc bǎn běn shì fǒu zài 2.81 bǎn běn yǐ shàng, gmake bǎn běn shì fǒu zài 3.75 yǐ shàng。
3、 rú guǒ bù shì bǎn běn de wèn tí, nà kě néng shì nǐ de nèi cún bù zú, qǐng shǐ yòng ./configure--with-low-memory lái jiā rù。
4、 rú guǒ nín yào chóngxīn zuò nǐ de configure, nà me nǐ kě yǐ jiàn rù rmconfig.cache hé makeclean lái qīng chú jì lù。
5、 wǒ men yī bān bǎ mysql 'ān zhuāng zài /usr/local mù lù xià, zhè shì quē shěng zhí, nín yě kě yǐ 'àn zhào nǐ de xū yào shè dìng nǐ suǒ 'ān zhuāng de mù lù。 |
chū xué mysql nǎ xiē xū yào nǐ zhī dào |
yī、 lián jiē mysql
gé shì: mysql-h zhù jī dì zhǐ -u yòng hù míng - p yòng hù mì mǎ
1、 lì 1: lián jiē dào běn jī shàng de mysql。
shǒu xiān zài dǎ kāi DOS chuāng kǒu, rán hòu jìn rù mù lù mysqlbin, zài jiàn rù mìng lìng mysql-uroot-p, huí chē hòu tí shì nǐ shū mì mǎ, rú guǒ gāng 'ān zhuāng hǎo mysql, chāo jí yòng hù root shì méi yòu mì mǎ de, gù zhí jiē huí chē jí kě jìn rù dào mysql zhōng liǎo, mysql de tí shì fú shì: mysql>
2、 lì 2: lián jiē dào yuǎn chéng zhù jī shàng de mysql。 jiǎ shè yuǎn chéng zhù jī de IP wéi: 110.110.110.110, yòng hù míng wéi root, mì mǎ wéi abcd123。 zé jiàn rù yǐ xià mìng lìng:
mysql-h110.110.110.110-uroot-pabcd123
( zhù :u yǔ root kě yǐ bù yòng jiā kònggé, qí tā yě yī yàng)
3、 tuì chū mysql mìng lìng: exit( huí chē)
èr、 xiū gǎi mì mǎ
gé shì: mysqladmin-u yòng hù míng -p jiù mì mǎ password xīn mì mǎ
1、 lì 1: gěi root jiā gè mì mǎ ab12。 shǒu xiān zài DOS xià jìn rù mù lù mysqlbin, rán hòu jiàn rù yǐ xià mìng lìng
mysqladmin-uroot-passwordab12
zhù: yīn wéi kāi shǐ shí root méi yòu mì mǎ, suǒ yǐ -p jiù mì mǎ yī xiàng jiù kě yǐ shěng lüè liǎo。
2、 lì 2: zài jiāng root de mì mǎ gǎi wéi djg345。
mysqladmin-uroot-pab12passworddjg345
sān、 zēng jiā xīn yòng hù
( zhù yì: hé shàng miàn bù tóng, xià miàn de yīn wéi shì mysql huán jìng zhōng de mìng lìng, suǒ yǐ hòu miàn dū dài yī gè fēn hào zuò wéi mìng lìng jié shù fú)
gé shì: grantselecton shù jù kù .*to yòng hù míng @ dēng lù zhù jī identifiedby“ mì mǎ”
lì 1、 zēng jiā yī gè yòng hù test1 mì mǎ wéi abc, ràng tā kě yǐ zài rèn hé zhù jī shàng dēng lù, bìng duì suǒ yòu shù jù kù yòu chá xún、 chā rù、 xiū gǎi、 shān chú de quán xiàn。 shǒu xiān yòng yǐ root yòng hù lián rù mysql, rán hòu jiàn rù yǐ xià mìng lìng:
grantselect,insert,update,deleteon*.*totest1@“ %” Identifiedby“ abc” ;
dàn lì 1 zēng jiā de yòng hù shì shí fēn wēi xiǎn de, nǐ xiǎng rú mǒu gè rén zhī dào test1 de mì mǎ, nà me tā jiù kě yǐ zài internet shàng de rèn hé yī tái diàn nǎo shàng dēng lù nǐ de mysql shù jù kù bìng duì nǐ de shù jù kě yǐ wéi suǒ yù wèile, jiě jué bàn fǎ jiàn lì 2。
lì 2、 zēng jiā yī gè yòng hù test2 mì mǎ wéi abc, ràng tā zhǐ kě yǐ zài localhost shàng dēng lù, bìng kě yǐ duì shù jù kù mydb jìn xíng chá xún、 chā rù、 xiū gǎi、 shān chú de cāo zuò( localhost zhǐ běn dì zhù jī, jí mysql shù jù kù suǒ zài de nà tái zhù jī), zhè yàng yòng hù jí shǐ yòng zhī dào test2 de mì mǎ, tā yě wú fǎ cóng internet shàng zhí jiē fǎng wèn shù jù kù, zhǐ néng tōng guò mysql zhù jī shàng de web yè lái fǎng wèn liǎo。
grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby“ abc” ;
rú guǒ nǐ bù xiǎng test2 yòu mì mǎ, kě yǐ zài dǎ yī gè mìng lìng jiāng mì mǎ xiāo diào。
grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby“” ;
xià miàn lái kàn kàn mysql zhōng yòu guān shù jù kù fāng miàn de cāo zuò。 zhù yì: bì xū shǒu xiān dēng lù dào mysql zhōng, yǐ xià cāo zuò dōushì zài mysql de tí shì fú xià jìn xíng de, ér qiě měi gè mìng lìng yǐ fēn hào jié shù。
sì、 cāo zuò jì qiǎo
1、 rú guǒ nǐ dǎ mìng lìng shí, huí chē hòu fā xiàn wàng jì jiā fēn hào, nǐ wú xū zhòng dǎ yī biàn mìng lìng, zhǐ yào dǎ gè fēn hào huí chē jiù kě yǐ liǎo。 yě jiù shì shuō nǐ kě yǐ bǎ yī gè wán zhěng de mìng lìng fēn chéng jǐ xíng lái dǎ, wán hòu yòng fēn hào zuò jié shù biāo zhì jiù OK。
2、 nǐ kě yǐ shǐ yòng guāng biāo shàng xià jiàn diào chū yǐ qián de mìng lìng。 dàn yǐ qián wǒ yòng guò de yī gè mysql jiù bǎn běn bù zhī chí。 wǒ xiàn zài yòng de shì mysql-3.23.27-beta-win。
wǔ、 xiǎn shì mìng lìng
1、 xiǎn shì shù jù kù liè biǎo。
showdatabases;
gāng kāi shǐ shí cái liǎng gè shù jù kù: mysql hé test。 mysql kù hěn zhòng yào tā lǐ miàn yòu mysql de xì tǒng xìn xī, wǒ men gǎi mì mǎ hé xīn zēng yòng hù, shí jì shàng jiù shì yòng zhè gè kù jìn xíng cāo zuò。
2、 xiǎn shì kù zhōng de shù jù biǎo:
usemysql; // dǎ kāi kù, xué guò FOXBASE de yī dìng bù huì mò shēng bā
showtables;
3、 xiǎn shì shù jù biǎo de jié gòu:
describe biǎo míng ;
4、 jiàn kù:
createdatabase kù míng ;
5、 jiàn biǎo:
use kù míng;
createtable biǎo míng ( zì duàn shè dìng liè biǎo );
6、 shān kù hé shān biǎo :
dropdatabase kù míng ;
droptable biǎo míng;
7、 jiāng biǎo zhōng jì lù qīng kōng:
deletefrom biǎo míng ;
8、 xiǎn shì biǎo zhōng de jì lù:
select*from biǎo míng ;
liù、 yī gè jiàn kù hé jiàn biǎo yǐ jí chā rù shù jù de shí lì
dropdatabaseifexistsschool;// rú guǒ cún zài SCHOOL zé shān chú
createdatabaseschool;// jiàn lì kù SCHOOL
useschool;// dǎ kāi kù SCHOOL
createtableteacher// jiàn lì biǎo TEACHER
(
idint(3)auto_incrementnotnullprimarykey,
namechar(10)notnull,
addressvarchar(50)default‘ shēn zhèn ',
yeardate
);// jiàn biǎo jié shù
// yǐ xià wéi chā rù zì duàn
insertintoteachervalues('','glchengang',’ shēn zhèn yī zhōng‘ ,'1976-10-10');
insertintoteachervalues('','jack',’ shēn zhèn yī zhōng‘ ,'1975-12-23');
zhù: zài jiàn biǎo zhōng :
( 1) jiāng ID shè wéi cháng dù wéi 3 de shù zì zì duàn :int(3) bìng ràng tā měi gè jì lù zì dòng jiā yī :auto_increment bìng bù néng wéi kōng :notnull 'ér qiě ràng tā chéng wéi zhù zì duàn primarykey。
( 2) jiāng NAME shè wéi cháng dù wéi 10 de zì fú zì duàn。
( 3) jiāng ADDRESS shè wéi cháng dù 50 de zì fú zì duàn, ér qiě quē shěng zhí wéi shēn zhèn。 varchar hé char yòu shénme qū bié ní, zhǐ yòu děng yǐ hòu de wén zhāng zài shuō liǎo。
( 4) jiāng YEAR shè wéi rì qī zì duàn。
rú guǒ nǐ zài mysql tí shì fú jiàn rù shàng miàn de mìng lìng yě kě yǐ, dàn bù fāng biàn tiáoshì。 nǐ kě yǐ jiāng yǐ shàng mìng lìng yuán yàng xiě rù yī gè wén běn wén jiàn zhōng jiǎ shè wéi school.sql, rán hòu fù zhì dào c: xià, bìng zài DOS zhuàng tài jìn rù mù lù mysqlbin, rán hòu jiàn rù yǐ xià mìng lìng:
mysql-uroot-p mì mǎ <c:school.sql
rú guǒ chéng gōng, kòngchū yīháng wú rèn hé xiǎn shì; rú yòu cuò wù, huì yòu tí shì。( yǐ shàng mìng lìng yǐ jīng tiáoshì, nǐ zhǐ yào jiāng // de zhù shì qù diào jí kě shǐ yòng)。
qī、 jiāng wén běn shù jù zhuǎn dào shù jù kù zhōng
1、 wén běn shù jù yìng fú hé de gé shì: zì duàn shù jù zhī jiān yòng tab jiàn gé kāi, null zhí yòng n lái dài tì .
lì:
3rose shēn zhèn 'èr zhōng 1976-10-10
4mike shēn zhèn yī zhōng 1975-12-23
2、 shù jù chuán rù mìng lìng loaddatalocalinfile“ wén jiàn míng” intotable biǎo míng ;
zhù yì: nǐ zuì hǎo jiāng wén jiàn fù zhì dào mysqlbin mù lù xià, bìng qiě yào xiān yòng use mìng lìng dǎ biǎo suǒ zài de kù。
bā、 bèi fèn shù jù kù:( mìng lìng zài DOS de mysqlbin mù lù xià zhí xíng)
mysqldump--optschool>school.bbb
zhù shì : jiāng shù jù kù school bèi fèn dào school.bbb wén jiàn, school.bbb shì yī gè wén běn wén jiàn, wén jiàn míng rèn qǔ, dǎ kāi kàn kàn nǐ huì yòu xīn fā xiàn。 |
|
shù jù kù | wén jiàn xì tǒng | guāng qū | jìng shuǐ qì lǜ xìn | php | lùn tán | cms | wǎng yè múbǎn | asp | apache | Nginx | wǎng zhàn | perl | ruǎn jiàn | fú wù qì | shù jù kù guǎn lǐ | mysql&a=0&tc=&g=1"> gèng duō jiēguǒ ... |
|