成人黄色在线-国产久视频-精品999www-美女视频一区二区三区-区二区欧美性插b在线视频网站-熟妇人妻无码中文字幕

< 返回新聞公共列表

如何在Ubuntu操作系統上配置MySQL服務器?

發布時間:2023-03-31 15:08:58

在本中,小編將講解如何在Ubuntu操作系統上配置MySQL服務器?它描述了如何設置root密碼、創建數據庫以及為數據庫添加用戶。該文章更詳細地檢查了MySQL配置,因此我們可以調整其配置并做好準備,以防出現問題。


如何在Ubuntu操作系統上配置MySQL服務器?.png


一、查找配置文件

默認情況下,我們可以在以下位置找到MySQL配置文件:/etc/mysql

但是,如果它們不存在,我們可以使用mysqld來查找配置。運行以下命令:$ /usr/sbin/mysqld --help --verbose

冗長響應的第一部分描述了啟動服務器時可以發送到服務器的選項。第二部分顯示服務器編譯期間的配置集。

在輸出的開頭附近,找到類似于以下示例的幾行:

Default options are read from the following files in the given order:

/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

服務器檢查該列表,直到找到配置文件。


二、my.cnf 配置文件

打開并查看/etc/mysql/my.cnf文件。

以#開頭的注釋行記錄了不同設置的使用。它們顯示有關日志文件、數據庫文件和其他詳細信息的位置的詳細信息。

配置組

配置文件包含方括號中帶有單個單詞的行,例如[client]或[mysqld]。這些部分是配置組。它們使重要的配置元素對讀取配置文件的程序更加可見。

從技術上講,服務器配置部分是一組工具。這包括服務器 ( mysqld)、客戶端 ( mysql) 和其他工具。這些程序在my.cnf中查看它們應該如何表現。

客戶端配置部分控制mysql客戶端,該mysqld部分控制服務器配置。


三、日志文件

日志文件是開始對任何程序進行故障排除的最佳位置。默認情況下,MySQL將其日志文件存儲在以下目錄中:/var/log/mysql

我們可能需要使用sudo來獲取該目錄中的文件列表。

如果在默認目錄中找不到MySQL日志,請檢查MySQL配置。查看my.cnf文件并查找一行log_error,如:

log_error = /var/log/mysql/error.log

如果我們沒有看到這樣的一行,請在mysqld部分創建一個,這樣 MySQL就可以使用它自己的錯誤日志。使用示例中的位置,創建/var/log/mysql目錄(如果尚不存在)。然后,重新啟動MySQL以進行更改。

確保用戶可以通過控制mysql進程寫入所選的日志目錄。運行該進程的用戶在my.cnf中mysqld的用戶配置值中定義。


四、網絡設置

客戶端和服務器配置部分下可能都有“端口”設置。服務器部分下的端口控制服務器監聽的端口。默認端口是3306但是,我們可以更改它。

客戶端部分的端口告訴客戶端默認連接到哪個端口。我們通常希望兩個端口設置匹配。

如果我們使用默認設置,將不會在配置文件中看到端口條目。如果要更改端口,請在適當的類別中添加以下行:

[client]

port = 3306

[mysqld]

port = 3306

另一個要查找的網絡設置是綁定地址值。這通常設置為本地主機的地址127.0.0.1。通過綁定到本地主機,服務器確保沒有人可以從本地計算機外部連接到它。

如果我們在與自己的應用程序不同的計算機上運行MySQL服務器,我們應該綁定到一個遠程可訪問的地址而不是本地主機。更改綁定地址設置以匹配我們的公共IP地址。出于安全原因,我們應該使用網絡上的后端IP地址。

如果我們沒有看到綁定地址條目,應該將一個放入mysqld類別以幫助控制對服務器的訪問:

[mysqld]

$ bind-address = 127.0.0.1

請記住在設置數據庫用戶時考慮客戶端的主機名,并在運行時提供防火墻訪問權限iptables。


五、mysqld和mysqld_safe

在幕后,有兩個版本的MySQL服務器,mysqld和mysqld_safe. 兩者都讀取相同的配置部分。但是,mysqld_safe啟用更多安全功能的啟動可以更輕松地從故障排除中恢復。

兩者mysqld都讀取mysqldmysqld_safe部分中的配置條目。如果包含mysqld_safe部分,則只有mysqld_safe使用這些值。

默認情況下,MySQL服務會啟動mysqld_safe,這是合適的。


六、mysql管理員

該mysqladmin工具允許我們從命令行執行一些本文未涉及的管理功能。稍后我們可能會更深入地探索該工具以了解它的功能,尤其是當我們需要構建腳本來執行諸如檢查服務器狀態或創建和刪除數據庫等功能時。


七、備份

除了通常的備份整個計算機方法之外,我們還有以下選項來備份數據庫。主要的兩個選項是復制數據庫文件或使用mysqldump.

文件復制

默認情況下,MySQL在其數據目錄/var/lib/mysql中為每個數據庫創建一個目錄。

找到數據目錄后,請稍等片刻,然后再復制它。當數據庫服務器處于活動狀態時,它會將新值寫入表。不要中斷此過程以避免可能損壞我們的備份。

為確保我們干凈地復制了數據庫文件,應該在復制之前完全關閉 MySQL服務器。

我們可以在復制期間將數據庫鎖定為只讀。完成后,釋放鎖。這樣,我們的應用程序仍然可以在您備份文件時讀取數據。

通過從命令行運行以下命令將數據庫鎖定為只讀:

$ mysql -u root -p -e "FLUSH TABLES WITH READ LOCK;"

完成后運行以下命令解鎖數據庫:

$ mysql -u root -p -e "UNLOCK TABLES;"

MySQL客戶端選項-e告訴客戶端在引號中運行查詢,就好像我們在 MySQL? shell中輸入它一樣。

如果您在腳本中編寫這些命令,則可以將密碼放在引號中,-p兩者之間沒有空格,類似于以下示例:

$ mysql -u root -p"password" -e "FLUSH TABLES WITH READ LOCK;"

$ mysql -u root -p"password" -e "UNLOCK TABLES;"

出于密碼安全原因,請確保對該文件設置權限以限制讀取訪問。


八、mysql轉儲

備份數據庫的另一種方法是使用該mysqldump工具。不是直接復制數據庫文件,而是mysqldump生成一個代表數據庫的文本文件。默認情況下,文本文件包含用于重新創建數據庫的SQL語句列表,但我們也可以將數據庫導出為其他格式,如.CSV或.XML。

生成的語句mysqldump直接進入標準輸出。我們可以通過在命令行中運行以下命令來指定a以重定向輸出:

$ mysqldump -u root -p demodb > dbbackup.sql

此命令指示在SQL語句中mysqldump重新創建demodb數據庫并將它們寫入文件dbbackup.sql。請注意,用戶名和密碼選項的功能與 MySQL客戶端相同,因此我們可以-p在腳本后直接包含密碼。

從mysqldump恢復

恢復mysqldump數據庫類似于創建轉儲的方式,但我們使用的是,mysql而不是mysqldump,如以下恢復命令所示:

$ mysql -u root -p demodb < dbbackup.sql

另請注意,<尖括號會改變方向。這會將命令從重定向其輸出切換為從現有文件中提取輸入。該輸入被發送到mysql命令,導致指令重新創建數據庫。

默認情況下,生成的SQL語句會添加到現有數據庫表中,而不是覆蓋它們。如果要在現有數據庫上恢復備份,則應先刪除數據庫表,或者刪除并重新創建數據庫本身。我們可以通過將選項$ --add-drop-table與創建mysqldump. 這導致mysqldump向它寫入的備份文件添加一個命令,該命令在重新創建表之前刪除表。


九、數據庫引擎

數據庫引擎是在幕后工作的進程,從文件寫入和讀取數據。如果我們想運行針對特定數據庫引擎優化的應用程序,只需要了解這一點。

需要表的應用程序按需創建它們并自動創建引擎類型。要查看數據庫表使用的引擎,可以在MySQL shell中運行以下命令,將demodb更改為數據庫的名稱:

$ SHOW TABLE STATUS FROM demodb;

選擇引擎

理想情況下,我們不需要選擇引擎。如果對MySQL不是很熟悉,請允許應用程序默認選擇一個。如果我們正在編寫應用程序,請使用默認引擎,直到對自己的選擇感到滿意為止。

MySQL最常用的兩個數據庫引擎是MyISAM和InnoDB. MySQL 5.1 版及更早版本的默認數據庫引擎是MyISAM,而InnoDB是從 MySQL 5.5 版開始的默認數據庫引擎。

MyISAM

因為MyISAM在 MySQL中已經默認了一段時間,所以它是兩個主要引擎中最兼容的選擇。某些類型的搜索MyISAM比InnoDB. 盡管它是兩者中較舊的一個,但它可能是給定應用程序類型的最佳選擇。

InnoDB

InnoDB比數據庫更容錯,MyISAM并以更小的數據庫損壞風險處理崩潰和恢復。

如果我們的應用程序需要InnoDB并且使用的是MySQL 5.1或更早版本,則my.cnf配置文件中可能沒有任何設置。如果我們在沒有太多內存的服務器上運行,這可能是個問題。

以下設置可以讓我們在具有256兆RAM的共享服務器上開始使用 InnoDB:

innodb_buffer_pool_size = 32M

innodb_log_file_size = 8M

innodb_thread_concurrency = 8

innodb_file_per_table

將它們添加到配置文件的[mysqld]部分。同樣,這些只是粗略的指南。


以上是“在Ubuntu操作系統上配置MySQL服務器”相關教程,希望能幫助到大家!


/template/Home/Zkeys724/PC/Static
主站蜘蛛池模板: 日本黄网站免费| 蜜芽久久人人超碰爱香蕉| 成人一在线视频日韩国产| 好吊色欧美一区二区三区视频| 九九99无码精品视频在线观看| 国产av福利久久| 亚洲夜夜性无码| 无码熟妇人妻av在线一| 人妻无码一区二区三区四区| 久久天天躁狠狠躁夜夜躁app| 五月激激激综合网色播| 国产精品边叫边喷水| 国产高清不卡一区二区| 亚洲日本成本人观看| 色窝窝无码一区二区三区| 国产无av码在线观看| 3d无码纯肉动漫在线观看 | 成人区人妻精品一区二区不卡视频 | 人妻丰满熟妇av无码区app| 日产无码中文字幕av| 亚洲国产欧美在线人成大黄瓜| 国产午夜成人久久无码一区二区| 999久久久免费精品播放| 激情久久av一区av二区av三区| 久久久久夜夜夜综合国产| 人人澡人人妻人人爽人人蜜桃| 大逼视频| 亚无码乱人伦一区二区| 欧美 偷窥 清纯 综合图区| 呦系列视频一区二区三区| 中国老太婆bb无套内射| 国产av无码日韩av无码网站| 久久久久国产精品人妻| 伊人久久大香线蕉av五月天宝贝| 国产乱子伦农村叉叉叉| 伊人久久大香线蕉综合色狠狠 | 亚洲丁香五月天缴情综合| 国产国拍亚洲精品永久69| 午夜不卡av免费| 免费无码高潮流白浆视频| 国产免费看插插插视频|