您好,登錄后才能下訂單哦!
本篇內容介紹了“MySQL8的安裝與配置”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
下載MySQL 8
MySQL 8 下載站點。
【注意】您需要從“Select Operating System”下拉菜單中選擇操作系統。否則,該網站將默認瀏覽器檢測到的操作系統提供下載。
安裝MySQL 8
設置MySQL的過程因目標操作系統的不同而異。
l Microsoft Windows和MacOS用戶可以下載并運行基于GUI的安裝程序。這將引導用戶完成設置過程,并為常見配置選項提供默認值。
l Linux用戶可以下載Oracle提供的通用二進制文件,也可以通過Linux發行版的軟件包管理系統安裝MySQL。
在Linux上安裝MySQL時的注意事項:
l MySQL至少最新版,可能無法在給定的Linux發行版的默認軟件資源庫中使用。例如,在Fedora Linux上,您可能需要手動向包管理系統添加MySQL存儲庫,然后從該存儲庫安裝。
l 除非您完全卸載以前的版本,否則您無法從使用通用Linux二進制文件切換到發行版軟件包管理器提供的版本。(反過來也是如此。)最好的辦法是盡可能使用相同的分配路徑,來保持一致性。
MySQL也可用作Docker映像。通過向容器傳遞命令行標記,可以更改MySQL中許多最常見的選項。如果需要更細粒度的控制,可以創建自定義配置文件并將其傳遞給容器。(如果您是Docker專家,可以通過添加層來進一步定制容器映像。)
Oracle為許多平臺提供的另一個選項是沒有安裝程序的通用二進制歸檔。這需要手工設置,主要通過創建和編輯配置文件。優點是,只需刪除二進制文件及其支持文件,以后就可以輕松刪除整個文件。
從以前的版本升級到MySQL 8
如果您想從以前版本的MySQL升級到MySQL 8,可以選擇處理升級的兩種常規策略。
【注意】僅支持從MySQL 7的GA版本(最好是最新的GA版本)升級。 非GA版本的MySQL 7及早期版本的MySQL(例如MySQL 6)的升級不能保證有效。
l 本地升級。 這涉及用MySQL 8二進制文件替換現有的MySQL 7二進制文件。
l 導出和重新導入。 MySQL的文檔將此過程稱為“logical upgrade.”。這可以使用mysqldump或mysqlpump實用程序執行。
在任何一種情況下,都應確保要升級的數據庫沒有遺留的兼容性問題。 同時還要關注你正在運行平臺的升級方法,因為Windows或MacOS系統的升級過程是跟Linux進程不一樣的。
配置MySQL 8
MySQL有很多的配置選項,但好在安裝或升級過程的初始階段,很多是不需要的。
編輯MySQL 8配置文件
MySQL 8的Microsoft Windows和MacOS圖形安裝程序會自動選擇合理的默認值,讓用戶了解最重要的選項。這些選擇記錄在MySQL使用的配置文件中。此外,linux 用戶還會有一個基本的配置文件, 其中有一些自動生成的默認值, 盡管在 Linux 上默認情況下沒有添加多少設置。
要找出MySQL配置文件的位置,先從shell運行mysql -help,然后查找“Default options are read from the following files in the given order.”的行。配置文件及其位置將在那里列出。
如果MySQL配置文件中所有選項的默認值都沒有列在配置文件里,您可以在文件的文檔中尋找。
一個好的方法是,使用MySQL安裝中包含的MySQL Workbench應用程序來編輯選項文件。 MySQL Workbench提供了一個選項卡式GUI,列出了文件中的每個可能設置以及每個設置的功能描述。一些意外情況也會使MySQL Workbench配置文件變得更加困難,比如,不小心插入一個不屬于它的linebreak。
最初,MySQL Workbench沒有用特定的MySQL連接注冊的選項文件。要添加選項文件,請執行以下步驟:
1. 在MySQL Workbench主頁中,右鍵單擊為其添加選項文件的實例連接,然后選擇“Edit Connection.”。
2. 在系統配置文件選項卡下,在“Configuration File”行中填寫選項文件的完整路徑。
3. 單擊“Test Connection”進行測試,確保一切正常。
4. 當您下次打開該連接時,可以通過“Instance | Options File.”的方式從左側樹狀菜單編輯選項文件設置。
設置MySQL 8的root密碼
如果說MySQL設置中有需要的注意事項,那么從一開始就為服務器設置root密碼,以減少不必要的安全隱患。
MySQL 8的Windows和MacOS安裝程序在安裝過程中會提示用戶輸入root密碼,一些用于MySQL 8的Linux安裝程序,比如Ubuntu的基于apt-get安裝,允許用戶提供root MySQL密碼。
在其他情況下,比如使用Fedora的yum或dnf安裝程序時,root密碼會隨機設置并在MySQL的錯誤日志中回顯。這時可以使用命令sudo grep ‘temporary password’ /var/log/mysqld.log. 顯示它。 但該密碼應盡快更改并且一定要盡可能復雜。
使用MySQL 8的新身份驗證方法
如果你想在Linux推薦的環境中使用MySQL Workbench,那么你需要注意MySQL 8中的另一個配置選項。
安裝MySQL 8時,您將看到新的SHA-256密碼身份驗證方法的選項。 此方法比傳統的“native password”方法安全得多,因此建議將其作為新安裝的默認方法。
但是,這種新方法的主要缺點是與最新版本的MySQL客戶端軟件(尤其是MySQL Workbench)不兼容。
【注意】客戶端軟件的最新版本無法由默認安裝路徑安裝所有Linux版本。也就是說,如果您從該操作系統的MySQL存儲庫安裝一個全新的MySQL 8,比如Ubuntu 18.04,那么MySQL Workbench的附帶副本將不支持SHA-256身份驗證!
解決方法:
l 下載MySQL Workbench的開發版本。 這完全取決于是否為你的操作系統構建了開發版本,但大多數Linux似乎都有最新開發的二進制版本,這通常是最簡單的路徑。
l 如果您只允許從localhost連接到MySQL,則可以避免使用SHA-256身份驗證,并且不會在安全性方面損失太多。這并不一定是你的永久解決方案,您可以使用舊連接協議,直到獲得系統最新版本的客戶端軟件,然后更改為新的身份驗證方法。但這意味著您必須更改MySQL配置文件中的身份驗證方法,并更改MySQL用戶帳戶以匹配。
l 從頭開始構建客戶端軟件。這是最費力的解決方法,只建議那些實在沒有其他選擇的人選用。
主要MySQL 8配置選項
MySQL 8絕大多數的選項都不需要預先設置。一些如上面提到的客戶端安全協議,應該盡早決定,是使用GUI安裝向導還是手工編輯配置文件。以下是其他幾個:。
其他MySQL用戶
如果可能的話,盡量不要使用root賬戶來連接使用MySQL的應用程序。創建一個只有在該應用程序需要的數據庫上具有完全權限的帳戶。MySQL Workbench應用程序只需要幾次單擊就可以實現這一點。
MySQL連接協議
MySQL 8可以通過多種方式接受到服務器的傳入連接:
l TCP/ IP。這是連接到MySQL實例最廣泛的方式,它允許本地和遠程連接。 總的來說,它也是最慢的,因為流量必須通過整個TCP / IP堆棧,但這通常只存在在極端性能的情況下。對于需要遠程客戶端連接的情況來說,無論如何TCP / IP都是一個簡單的方式。 但是同時也需要密切關注連接的安全性。
l Unix sockets/named pipes。這些是Unix / Linux和Windows中兩個大致相同的功能。 當客戶端或應用程序和服務器位于同一系統上時,Sockets和pipes 最佳,因為數據可以更快地在客戶端和服務器之間傳輸,也可以通過網絡發布這樣的連接,但這樣做很麻煩,這種情況下,你最好只使用TCP / IP。
l 共享內存。 這是服務器和客戶端之間最快的連接選項,但也是最不靈活的。 它僅在服務器和客戶端位于同一物理系統上時才有效,并且服務器可能難以檢測客戶端是否已超時或被終止,從而導致未終止的連接累積并浪費資源。
【注意】在Unix系統上,為了提高性能,localhost的任何連接都默認使用Unix sockets。
MySQL日志選項
除了一般的錯誤日志之外,MySQL還可以維護其他三種日志,這些日志在默認情況下全部禁用,但在配置過程中可以根據需要啟用調試。
l General。這提供了MySQL從啟動到關閉的詳細運行摘要。
l Slow query。可以記錄任何執行時間超過x秒(數量可配置)的查詢以進行調試。
l BINLOG。“二進制日志”的縮寫,可以將此日志配置為包含對數據庫文件的所有修改的二進制轉儲。顯而易見,這會對性能產生重大影響,所以除非嘗試調試真正棘手的問題,否則不應啟用它。
默認情況下,日志不會自動清除,因此必須通過mysql-log-rotate腳本定期刪除。 Binlogs是一個例外,默認情況下它會在30天后過期。
MySQL遷移和安裝提示
如果您要將現有的MySQL數據庫遷移到MySQL 8.0,規則很簡單:
l 對數據進行完全備份。
l 僅使用MySQL 5.7中的數據庫進行本地升級。否則,您有兩種選擇:
a) 導出并重新導入數據。
b) 將現有MySQL實例升級到5.7,然后進行本地升級。
在MySQL 8.0中創建新數據庫時的注意事項:
l 將InnoDB用于所有新表。 InnoDB現在是MySQL中新創建表的默認選擇。為什么呢?因為有一段時間,傳統的MyISAM存儲引擎比新的InnoDB有一些優勢,尤其是全文索引。但現在MySQL 8.0,InnoDB支持全文索引,除了行級鎖定,事務交易,崩潰恢復,外鍵約束以及許多其他功能數據庫之外,還有許多其他功能不應該放棄。
l 使用utf8mb4字符集,但要研究使用的排序規則。 MySQL 8現在支持utf8mb4字符集 (UTF-8的一種實現),每個字符最多可存儲4個字節,以便盡可能廣泛地與 Unicode 兼容。默認情況下, 為新數據庫選擇了 utf8mb4, 而選擇其他內容則沒有什么意義。 與此同時,您使用的排序規則要遵循應用程序的需求。默認情況下,MySQL 8使用通用的utf8mb4_0900_ai_ci排序規則,但排序規則不區分重音和大小寫; 為此,可以改用utf8mb4_0900_as_cs。 如果您的大多數工作都是使用特定語言完成的,您或許會想要更具特定語言的排序規則。
“MySQL8的安裝與配置”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。