目錄
1. 布尔全文搜索
2. 全文搜索带查询扩展
3. 全文停止字
4. 全文限定條件
5. 微調MySQL全文搜尋
首頁 資料庫 mysql教程 MySQL基礎教學10 — 函數之全文搜尋功能

MySQL基礎教學10 — 函數之全文搜尋功能

Feb 24, 2017 am 11:44 AM

語法:

  •  MATCH (col1,col2,...) AGAINST (expr [IN BOOLEAN MODE | WITH QUERY EXPANSION])

。 MySQL中的全文索引類型FULLTEXT的索引。  FULLTEXT 索引只可用於 MyISAM表;他們可以從CHAR、 VARCHAR或TEXT欄位中作為CREATE TABLE語句的一部分建立,或是隨後使用ALTER TABLE 或 CREATE INDEX被加入。對於較大的資料集,將你的資料輸入一個沒有FULLTEXT索引的表中,然後建立索引, 其速度比把資料輸入現有FULLTEXT索引的速度更為快。

全文搜尋同MATCH()函數一起執行。

mysql> CREATE TABLE articles (    
->   id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,    
->   title VARCHAR(200),    
->   body TEXT,    
->   FULLTEXT (title,body)    
-> );Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO articles (title,body) VALUES    
-> ('MySQL Tutorial','DBMS stands for DataBase ...'),    
-> ('How To Use MySQL Well','After you went through a ...'),    
-> ('Optimizing MySQL','In this tutorial we will show ...'),    
-> ('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'),    
-> ('MySQL vs. YourSQL','In the following database comparison ...'),    
-> ('MySQL Security','When configured properly, MySQL ...');Query OK, 6 rows affected (0.00 sec)
Records: 6  Duplicates: 0  Warnings: 0

mysql> SELECT * FROM articles    
-> WHERE MATCH (title,body) AGAINST ('database');
+----+-------------------+------------------------------------------+
| id | title             | body          |
+----+-------------------+------------------------------------------+
|  5 | MySQL vs. YourSQL | In the following database comparison ... |
|  1 | MySQL Tutorial    | DBMS stands for DataBase ...            |
+----+-------------------+------------------------------------------+
2 rows in set (0.00 sec)
登入後複製

MATCH()函數對於一個字串執行資料庫內的自然語言搜尋。一個資料庫就是1套1個或2個包含在FULLTEXT內的欄位。搜尋字串作為對AGAINST()的參數而被給定。對於表中的每一行, MATCH() 傳回相關值,即, 搜尋字串和 MATCH()表中指定該行文字之間的一個相似性測量列中。

在預設狀態下, 搜尋的執行方式為不區分大小寫方式。然而,你可以透過對編入索引的列使用二進位排序方式執行區分大小寫的全文搜尋。 例如,可以向一個使用latin1字元集的欄位給定latin1_bin 的排序方式,對於全文搜尋區分大小寫。

如上述所舉例子,當MATCH()被用在一個 WHERE 語句中時,相關值是非負浮點數。零相關的意思是沒有相似性。相關性的計算是基於該行中單字的數目, 該行中獨特子的數目,資料庫中單字的總數,以及包含特殊單字的文件(行)數目。

對於自然語言全文搜索,要求MATCH() 函數中命名的列和你的表中一些FULLTEXT索引中包含的列相同。對於前述問訊, 注意,MATCH()函數(題目及全文)中所命名的欄位和文章表的FULLTEXT索引中的欄位相同。若要分別搜尋題目和全文,應該對每個欄位建立FULLTEXT索引。

或也可以執行布林搜尋或使用查詢擴充進行搜尋。

上面的例子基本上顯示瞭如何使用返回行的相關性順序漸弱的MATCH()函數。而下面的例子則展示了怎樣明確地檢索相關值。回傳行的順序是不定的,原因是  SELECT 語句不包含 WHERE或ORDER BY 子句:

mysql> SELECT id, MATCH (title,body) AGAINST ('Tutorial')    
-> FROM articles;
+----+-----------------------------------------+
| id | MATCH (title,body) AGAINST ('Tutorial') |
+----+-----------------------------------------+
|  1 |                        0.65545833110809 |
|  2 |                                       0 |
|  3 |                        0.66266459226608 |
|  4 |                                       0 |
|  5 |                                       0 |
|  6 |                                       0 |
+----+-----------------------------------------+
6 rows in set (0.00 sec)
登入後複製

下面的範例則較為複雜。詢問傳回相關值,同時將行依照相關性漸弱的順序排序。要達到這個結果,你應該兩次指定MATCH(): 一次在 SELECT 清單中而另一次在 WHERE子句中。這不會造成額外的內務操作,原因是MySQL 最佳化程式註意到兩個MATCH()呼叫是相同的,因此只會啟動一次全文搜尋程式碼。

mysql> SELECT id, body, MATCH (title,body) AGAINST    
-> ('Security implications of running MySQL as root') AS score    
-> FROM articles WHERE MATCH (title,body) AGAINST    
-> ('Security implications of running MySQL as root');
+----+-------------------------------------+-----------------+
| id | body                                | score           |
+----+-------------------------------------+-----------------+
|  4 | 1. Never run mysqld as root. 2. ... | 1.5219271183014 |
|  6 | When configured properly, MySQL ... | 1.3114095926285 |
+----+-------------------------------------+-----------------+
2 rows in set (0.00 sec)
登入後複製

表中有2行(0.00 秒)

MySQL FULLTEXT 執行將任何單字字元原形 (字母、數字和底線部分)的序列視為一個單字。這個序列或許也包含單引號 ('),但在一行中不會超過一個。 這意味著 aaa'bbb 會被視為一個單字,而 aaa''bbb則被視為2個單字。位於單字前後的單引號會被FULLTEXT分析程式去掉; 'aaa'bbb' 會變成   aaa'bbb。

FULLTEXT分析程式會透過尋找某些分隔符號來確定單字的起始位置和結束位置,例如' ' (間隔符號)、 , (逗號)以及 . (句號)。假如單字沒有被分隔符號分開,(例如在中文裡 ), 則 FULLTEXT 分析程式不能確定一個字的起始位置和結束位置。為了能夠在這樣的語言中向FULLTEXT 索引添加單字或其它編入索引的術語,你必須對它們進行預處理,使其被一些諸如"之類的任意分隔符分隔開。

一些詞在全文搜尋會被忽略:

  • 任何過於短的字都會被忽略。就是一個像“the” 或“some” 這樣過於平常而被認為是不具語義的詞。一個正確的單字根據其在詞庫和詢問中的重要性而被衡量。原因是在這個特別詞庫中其語義價值較低。 。

    这项技术最适合同大型词库一起使用 (事实上, 此时它经过仔细的调整 )。对于很小的表,单词分布并不能充分反映它们的语义价值, 而这个模式有时可能会产生奇特的结果。例如, 虽然单词 “MySQL” 出现在文章表中的每一行,但对这个词的搜索可能得不到任何结果:

    mysql> SELECT * FROM articles

    -> WHERE MATCH (title,body) AGAINST ('MySQL');

    找不到搜索的词(0.00 秒)

    这个搜索的结果为空,原因是单词 “MySQL” 出现在至少全文的50%的行中。 因此, 它被列入停止字。对于大型数据集,使用这个操作最合适不过了----一个自然语言问询不会从一个1GB 的表每隔一行返回一次。对于小型数据集,它的用处可能比较小。

    一个符合表中所有行的内容的一半的单词查找相关文档的可能性较小。事实上, 它更容易找到很多不相关的内容。我们都知道,当我们在因特网上试图使用搜索引擎寻找资料的时候,这种情况发生的频率颇高。可以推论,包含该单词的行因其所在特别数据集 而被赋予较低的语义价值。 一个给定的词有可能在一个数据集中拥有超过其50%的域值,而在另一个数据集却不然。

    当你第一次尝试使用全文搜索以了解其工作过程时,这个50% 的域值提供重要的蕴涵操作:若你创建了一个表,并且只将文章的1、2行插入其中, 而文中的每个单词在所有行中出现的机率至少为 50% 。那么结果是你什么也不会搜索到。一定要插入至少3行,并且多多益善。需要绕过该50% 限制的用户可使用布尔搜索代码。

    1. 布尔全文搜索

    利用IN BOOLEAN MODE修改程序, MySQL 也可以执行布尔全文搜索:

    mysql> SELECT * FROM articles WHERE MATCH (title,body)    
    -> AGAINST ('+MySQL -YourSQL' IN BOOLEAN MODE);
    +----+-----------------------+-------------------------------------+
    | id | title                 | body                                |
    +----+-----------------------+-------------------------------------+
    |  1 | MySQL Tutorial        | DBMS stands for DataBase ...        |
    |  2 | How To Use MySQL Well | After you went through a ...        |
    |  3 | Optimizing MySQL      | In this tutorial we will show ...   |
    |  4 | 1001 MySQL Tricks     | 1. Never run mysqld as root. 2. ... |
    |  6 | MySQL Security        | When configured properly, MySQL ... |
    +----+-----------------------+-------------------------------------+
    登入後複製

    这个问询检索所有包含单词“MySQL”的行,但检索包含单词“YourSQL”的行。

    布尔全文搜索具有以下特点:

    • 它们不使用 50% 域值。.

    • 它们不会按照相关性渐弱的顺序将行进行分类。你可以从上述问询结果中看到这一点:相关性最高的行是一个包含两个“MySQL” 的行,但它被列在最后的位置,而不是开头位置。

    • 即使没有FULLTEXT,它们仍然可以工作,尽管这种方式的搜索执行的速度非常之慢。

    • 最小单词长度全文参数和最大单词长度全文参数均适用。

    • 停止字适用。

    布尔全文搜索的性能支持以下操作符:

    • +

    一个前导的加号表示该单词必须 出现在返回的每一行的开头位置。

    • -

    一个前导的减号表示该单词一定不能出现在任何返回的行中。

    • (无操作符)

    在默认状态下(当没有指定 + 或–的情况下),该单词可有可无,但含有该单词的行等级较高。这和MATCH() ... AGAINST()不使用IN BOOLEAN MODE修改程序时的运作很类似。

    • > <

    这两个操作符用来改变一个单词对赋予某一行的相关值的影响。 > 操作符增强其影响,而 <操作符则减弱其影响。请参见下面的例子。

    • ( )

    括号用来将单词分成子表达式。括入括号的部分可以被嵌套。

    • ~

    一个前导的代字号用作否定符, 用来否定单词对该行相关性的影响。 这对于标记“noise(无用信息)”的单词很有用。包含这类单词的行较其它行等级低,但因其可能会和-号同时使用,因而不会在任何时候都派出所有无用信息行。

    • *

    星号用作截断符。于其它符号不同的是,它应当被追加到要截断的词上。

    • "

    一个被括入双引号的短语 (‘"’) 只和字面上包含该短语输入格式的行进行匹配。全文引擎将短语拆分成单词,在FULLTEXT索引中搜索该单词。 非单词字符不需要严密的匹配:短语搜索只要求符合搜索短语包含的单词且单词的排列顺序相同的内容。例如, "test phrase" 符合 "test, phrase"。

    若索引中不存在该短语包含的单词,则结果为空。例如,若所有单词都是禁用词,或是长度都小于编入索引单词的最小长度,则结果为空。

    以下例子展示了一些使用布尔全文符号的搜索字符串:

    • 'apple banana'

    寻找包含至少两个单词中的一个的行。

    • '+apple +juice'

    寻找两个单词都包含的行。

    • '+apple macintosh'

    寻找包含单词“apple”的行,若这些行也包含单词“macintosh”, 则列为更高等级。

    • '+apple -macintosh'

    寻找包含单词“apple” 但不包含单词 “macintosh”的行。

    • '+apple +(>turnover

    寻找包含单词“apple”和“turnover” 的行,或包含“apple” 和“strudel”的行 (无先后顺序),然而包含 “apple turnover”的行较包含“apple strudel”的行排列等级更为高。

    • 'apple*'

    寻找包含“apple”、“apples”、“applesauce”或“applet”的行。

    • '"some words"'

    寻找包含原短语“some words”的行 (例如,包含“some words of wisdom” 的行,而非包含 “some noise words”的行)。注意包围词组的‘"’ 符号是界定短语的操作符字符。它们不是包围搜索字符串本身的引号。

    2. 全文搜索带查询扩展

    全文搜索支持查询扩展功能 (特别是其多变的“盲查询扩展功能” )。若搜索短语的长度过短, 那么用户则需要依靠全文搜索引擎通常缺乏的内隐知识进行查询。这时,查询扩展功能通常很有用。例如, 某位搜索 “database” 一词的用户,可能认为“MySQL”、“Oracle”、“DB2” and “RDBMS”均为符合 “databases”的项,因此都应被返回。这既为内隐知识。

    在下列搜索短语后添加WITH QUERY EXPANSION,激活盲查询扩展功能(即通常所说的自动相关性反馈)。它将执行两次搜索,其中第二次搜索的搜索短语是同第一次搜索时找到的少数顶层文件连接的原始搜索短语。这样,假如这些文件中的一个 含有单词 “databases” 以及单词 “MySQL”, 则第二次搜索会寻找含有单词“MySQL” 的文件,即使这些文件不包含单词 “database”。下面的例子显示了这个不同之处:

    mysql> SELECT * FROM articles   
     -> WHERE MATCH (title,body) AGAINST (&#39;database&#39;);
    +----+-------------------+------------------------------------------+
    | id | title             | body                                     |
    +----+-------------------+------------------------------------------+
    |  5 | MySQL vs. YourSQL | In the following database comparison ... |
    |  1 | MySQL Tutorial    | DBMS stands for DataBase ...             |
    +----+-------------------+------------------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> SELECT * FROM articles    
    -> WHERE MATCH (title,body)    
    -> AGAINST (&#39;database&#39; WITH QUERY EXPANSION);
    +----+-------------------+------------------------------------------+
    | id | title             | body                                     |
    +----+-------------------+------------------------------------------+
    |  1 | MySQL Tutorial    | DBMS stands for DataBase ...             |
    |  5 | MySQL vs. YourSQL | In the following database comparison ... |
    |  3 | Optimizing MySQL  | In this tutorial we will show ...        |
    +----+-------------------+------------------------------------------+
    3 rows in set (0.00 sec)
    登入後複製

    另一个例子是Georges Simenon 搜索关于Maigret的书籍, 这个用户不确定“Maigret”一词的拼法。若不使用查询扩展而搜索“Megre and the reluctant witnesses” 得到的结果只能是的“Maigret and the Reluctant Witnesses” 。 而带有查询扩展的搜索会在第二遍得到带有“Maigret”一词的所有书名。

    注释: 盲查询扩展功能很容易返回非相关文件而增加无用信息,因此只有在查询一个长度很短的短语时才有必要使用这项功能。

    3. 全文停止字

    以下表列出了默认的全文停止字:

    關於之後之後再次反對不是全部允許允許幾乎獨自是當中當中一個和另一個任何任何人無論如何出現欣賞合適是不是在作為放在一邊詢問關聯可用遠去可怕成為成為因為成為成為之前成為最好簡短簡短不能原因一定一定一定一定有關因此考慮考慮包含包含包含對應可以對應可以不同不做例如足夠了一切五個去幾乎沒有有沒有有沒有有他他是你好此後在此在這裡在這裡她的她自己嗨他他如何但是我會我會我我已經即如果確實表示表示表示內心如此相反進入向內它是它本身只是保持保持保留知道知道知道知道最後最後最少少以免讓讓喜歡喜歡可能喜歡可能主要意味著必須我我自己名字即nd近差不多需要需要老上曾經一個一個一個我們自己外面外面結束整體自己特別特別每大概可能提供que相當 qv而是rd重新相對re仔細看對說一樣看到了說說看到似乎似乎似乎似乎看見自己自己懂事她不應該因為六所以一些一些人一些某處很快抱歉指定指定指定子子是採取採取了告訴傾向於第比謝謝謝謝那個的那個那個然後他們思考這個因此嘗試嘗試兩次兩個un下不幸除非下不幸除非我們使用用過有用使用用通常值想要想要是不是方式我們我們會我們會我們是好我們會曾經不是什麼什麼是無論什麼何時從哪裡何時在哪裡在哪裡哪一個誰為什麼將會願意願望有內沒有不會還你你會你會你你已經你的你的你自己你自己


    4. 全文限定條件

    • 全文搜尋只適用於 MyISAM 表。

    • 全文搜尋可以和大多數多位元組字元集一起使用。 Unicode屬於例外;  可使用utf8 字符集 , 而非ucs2字元集。

    • 諸如漢語和日語這樣的表意語言沒有自定界符。因此, FULLTEXT分析程序不能確定在這些或其它的這類語言中詞的起始和結束的位置。

    • 若支援在一個單獨表中使用多字元集,則所有 FULLTEXT索引中的資料列 必須使用相同的字元集和函式庫。

    • MATCH()列列表必須同該表中一些 FULLTEXT索引定義中的列列表完全符合,除非MATCH()在IN BOOLEAN MODE。

    • 對AGAINST() 的參數必須是常數字串。

    5. 微調MySQL全文搜尋


    #MySQL的全文搜尋容量幾乎不具有使用者調節參數。假如你擁有一個 MySQL來源分佈,你就能對全文搜尋效能行使更多控制,原因是一些變化需要原始碼修改。

    注意,為了更有效,需要對全文搜尋謹慎調節。實際上,在大多數情況下修改預設效能只能降低其效能。  除非你知道自己在做什麼,否則不要改變 MySQL來源。 

    下述的大多數全文變數必須在伺服器啟動時被設定。為了改變它們,也要重新啟動伺服器;在伺服器正在運行期間,他們不會被改變。

    有些變數的改變需要你重建表中的 FULLTEXT 索引。本章結尾部分給出了其有關操作說明。

    • ft_min_word_len and ft_max_word_len系統自變數規定了被編入索引單字的最小長度和最大長度。 預設的最小值為四個字元;預設的最大值取決於所使用的 MySQL 版本。假如你改變任意一個值,那麼你必須重建你的 FULLTEXT索引。 例如,若你希望一個3字符的單字變成可查找項,則可以透過將以下行移到一個供選擇檔裡,從而設定 ft_min_word_len 變數:

    · [mysqld ]

    · ft_min_word_len=3

    #然後重新啟動伺服器,重建你的 FULLTEXT索引。同時也要特別注意該表後面的說明中的關於myisamchk的註解。

    • 若要覆寫預設停止字,則可設定 ft_stopword_file 系統變數。 變數值應為包含停止字的檔案路徑名, 或是用來截止禁用字過濾的空字串。在改變了這個變數的值或禁用字詞檔案的內容後, 重建你的 FULLTEXT索引。

    停止字是自由形態的,換言之,你可使用任何諸如newline、 space或comma這樣的非字母數字字元來分隔禁用字。 底線字元(_) 和被視為單字的一部分的單引號 (')例外。停止字字符集為伺服器預設字元集。

    •  自然語言查詢的50%閾值由所選的特別權衡方案決定。若要封鎖它,myisam/ftdefs.h 中尋找以下行:

    #· #define GWS_IN_USE GWS_PROB

    ##將該行改為:

    # #define GWS_IN_USE GWS_FREQ

    然後重新編譯 MySQL。此時不需要重建索引。註:這樣做你會

    嚴重的By 降低 MySQL為MATCH()函數提供合適的相關值得能力。假如你爭得需要搜尋這樣的普通詞,而使用IN BOOLEAN MODE代替的效果更好,因為它不遵循 50% 閾值。

    • 要改變布林全文搜尋的運算符,設定 ft_boolean_syntax 系統變數。 這個變數也可以在伺服器運作時被改變,但你必須有SUPER 特權才能這麼做。在這種情況下不需要重建索引。

    假如你改變了影響索引的全文變數 (ft_min_word_len、 ft_max_word_len或ft_stopword_file),或假如你改變了禁用字檔案本身,則你必須在改變和重新啟動伺服器後重建你的 FULLTEXT索引。這時,要重建索引, 只要進行一個 QUICK 修理作業:

    mysql> 

    REPAIR TABLE tbl_name QUICK;

    #注意,假如你使用  

    myisamchk 來執行一項修改表索引的操作 (諸如修理或分析 ), 則使用最小單字長度和最大單字長度以及停止字的預設全文參數值重建FULLTEXT索引,除非你已另外指定。這會導致問詢失敗。

    发生这个问题的原因是只有服务器认识这些参数。它们的存储位置不在 MyISAM 索引文件中。若你已经修改了最小单词长度或最大单词长度或服务器中的停止字,为避免这个问题,为你对mysqld所使用的myisamchk 指定同样的ft_min_word_len、 ft_max_word_len和ft_stopword_file值。例如,假如你已经将最小单词长度设置为 3, 则你可以这样修改一个带有myisamchk的表:

    shell> myisamchk --recover --ft_min_word_len=3 tbl_name.MYI

    为保证 myisamchk 及服务器对全文参数使用相同的值, 可将每一项都放在供选文件中的 [mysqld]和 [myisamchk] 部分:

    [mysqld]
    ft_min_word_len=3
    [myisamchk]
    ft_min_word_len=3
    登入後複製

    使用 REPAIR TABLE、 ANALYZE TABLE、OPTIMIZE TABLE或ALTER TABLE来代替使用 myisamchk 。这些语句通过服务器来执行,服务器知道使用哪个全文参数值更加合适。

     以上就是MySQL基础教程10 —— 函数之全文搜索功能的内容,更多相关内容请关注PHP中文网(www.php.cn)!


    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    Video Face Swap

    Video Face Swap

    使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    MySQL的角色:Web應用程序中的數據庫 MySQL的角色:Web應用程序中的數據庫 Apr 17, 2025 am 12:23 AM

    MySQL在Web應用中的主要作用是存儲和管理數據。 1.MySQL高效處理用戶信息、產品目錄和交易記錄等數據。 2.通過SQL查詢,開發者能從數據庫提取信息生成動態內容。 3.MySQL基於客戶端-服務器模型工作,確保查詢速度可接受。

    docker怎麼啟動mysql docker怎麼啟動mysql Apr 15, 2025 pm 12:09 PM

    在 Docker 中啟動 MySQL 的過程包含以下步驟:拉取 MySQL 鏡像創建並啟動容器,設置根用戶密碼並映射端口驗證連接創建數據庫和用戶授予對數據庫的所有權限

    laravel入門實例 laravel入門實例 Apr 18, 2025 pm 12:45 PM

    Laravel 是一款 PHP 框架,用於輕鬆構建 Web 應用程序。它提供一系列強大的功能,包括:安裝: 使用 Composer 全局安裝 Laravel CLI,並在項目目錄中創建應用程序。路由: 在 routes/web.php 中定義 URL 和處理函數之間的關係。視圖: 在 resources/views 中創建視圖以呈現應用程序的界面。數據庫集成: 提供與 MySQL 等數據庫的開箱即用集成,並使用遷移來創建和修改表。模型和控制器: 模型表示數據庫實體,控制器處理 HTTP 請求。

    解決數據庫連接問題:使用minii/db庫的實際案例 解決數據庫連接問題:使用minii/db庫的實際案例 Apr 18, 2025 am 07:09 AM

    在開發一個小型應用時,我遇到了一個棘手的問題:需要快速集成一個輕量級的數據庫操作庫。嘗試了多個庫後,我發現它們要么功能過多,要么兼容性不佳。最終,我找到了minii/db,這是一個基於Yii2的簡化版本,完美地解決了我的問題。

    centos7如何安裝mysql centos7如何安裝mysql Apr 14, 2025 pm 08:30 PM

    優雅安裝 MySQL 的關鍵在於添加 MySQL 官方倉庫。具體步驟如下:下載 MySQL 官方 GPG 密鑰,防止釣魚攻擊。添加 MySQL 倉庫文件:rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm更新 yum 倉庫緩存:yum update安裝 MySQL:yum install mysql-server啟動 MySQL 服務:systemctl start mysqld設置開機自啟動

    centos安裝mysql centos安裝mysql Apr 14, 2025 pm 08:09 PM

    在 CentOS 上安裝 MySQL 涉及以下步驟:添加合適的 MySQL yum 源。執行 yum install mysql-server 命令以安裝 MySQL 服務器。使用 mysql_secure_installation 命令進行安全設置,例如設置 root 用戶密碼。根據需要自定義 MySQL 配置文件。調整 MySQL 參數和優化數據庫以提升性能。

    laravel框架安裝方法 laravel框架安裝方法 Apr 18, 2025 pm 12:54 PM

    文章摘要:本文提供了詳細分步說明,指導讀者如何輕鬆安裝 Laravel 框架。 Laravel 是一個功能強大的 PHP 框架,它 упростил 和加快了 web 應用程序的開發過程。本教程涵蓋了從系統要求到配置數據庫和設置路由等各個方面的安裝過程。通過遵循這些步驟,讀者可以快速高效地為他們的 Laravel 項目打下堅實的基礎。

    MySQL與其他編程語言:一種比較 MySQL與其他編程語言:一種比較 Apr 19, 2025 am 12:22 AM

    MySQL与其他编程语言相比,主要用于存储和管理数据,而其他语言如Python、Java、C 则用于逻辑处理和应用开发。MySQL以其高性能、可扩展性和跨平台支持著称,适合数据管理需求,而其他语言在各自领域如数据分析、企业应用和系统编程中各有优势。

    See all articles
    一個能夠根據關於一個能夠根據
    以上
    任何人
    相信 下面旁邊另外
    更好 之間超越兩者
    但是兩者簡短但是兩者
    可以 不能不能
    原因來清楚
    來清楚來清楚
    儘管做了沒有
    完成每個時不會向下完成每個期間 edu
    八個要么 其他其他地方
    完全 每個人每個人
    每個地方 完全正確範例
    完全正確範例 跟著以下
    跟隨向前
    得到得到給予給予
    走了得到了
    如果
    很多可能也許
    同時可能
    下一個沒有沒有人沒有
    沒有 沒有人也沒有
    沒什麼小說現在無處顯然
    一個其他
    其他
    應該
    應該不應該因為
    他們的他們 他們自己然後
    那裡那裡此後這些
    他們會他們會他們是他們已經
    第三個這個第三個
    穿過整個穿過
    一起拍了
    於是 無論在哪裡是否
    去哪裡去哪裡