0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在Ubuntu上安裝MySQL-Server

我快閉嘴 ? 來源:AI科技大本營 ? 作者:AI科技大本營 ? 2022-09-15 10:24 ? 次閱讀
MySQL 是最常見的開源關(guān)系數(shù)據(jù)庫管理系統(tǒng) (RDBMS) 之一,它基于結(jié)構(gòu)化查詢語言 (SQL),這是一種用于管理數(shù)據(jù)庫中保存的數(shù)據(jù)的編程語言。

01要求

你將需要在系統(tǒng)上擁有提升的權(quán)限 (root)。你可以通過執(zhí)行以下命令來執(zhí)行此操作。

sudosu

02安裝MySQL

本文中選擇的 Ubuntu 版本是 Ubuntu 20.04 LTS,使用 MySQL Linux 版本是 5.7 版做示例。要開始安裝,可按照以下步驟操作:

步驟一

確保系統(tǒng)中的所有軟件包和存儲(chǔ)庫都是最新的,可以通過運(yùn)行以下命令來執(zhí)行此操作:

sudoaptupdate
f9c12536-3416-11ed-ba43-dac502259ad0.png更新系統(tǒng)包

步驟二

現(xiàn)在,我們將通過 apt 包管理器安裝 MySQL,執(zhí)行下面的命令。

sudoaptinstallmysql-server
f9d3ff44-3416-11ed-ba43-dac502259ad0.png安裝 MySQL 數(shù)據(jù)庫

步驟三

安裝成功后,mysql-service 應(yīng)該會(huì)自動(dòng)啟動(dòng)。你可以通過執(zhí)行以下命令來確認(rèn)。

sudosystemctlmysql-server

你應(yīng)該得到與下圖類似的輸出。

fa06a28c-3416-11ed-ba43-dac502259ad0.pngMySQL 狀態(tài)

服務(wù)未運(yùn)行時(shí),可執(zhí)行以下命令:

sudo/etc/init.d/mysqlstart

03驗(yàn)證MySQL-Server

你可以通過運(yùn)行以下命令來驗(yàn)證安裝結(jié)果,該命令將輸出系統(tǒng)中所安裝的 MySQL 版本和發(fā)行版。

mysql--version
fa32c100-3416-11ed-ba43-dac502259ad0.pngMySQL 版本分布

04保護(hù)MySQL-Server

既然 MySQL Server 安裝成功了,我們則需要設(shè)置一些參數(shù)來保證以后配置的服務(wù)器和數(shù)據(jù)庫的安全。

一般情況下,MySQL Server 包安裝完成后,mysql-secure-installation 實(shí)用程序?qū)⒆詣?dòng)啟動(dòng)。但是,如果你沒有自動(dòng)啟動(dòng),可執(zhí)行以下命令:

sudomysql_secure_installation

這將會(huì)一個(gè)提示,詢問是否驗(yàn)證密碼插件。它通過檢查用戶密碼的強(qiáng)度來增強(qiáng) MySQL Server 的安全性,允許用戶僅設(shè)置強(qiáng)密碼。按 Y 接受 VALIDATION 或按 RETURN 鍵跳過。

fa562c58-3416-11ed-ba43-dac502259ad0.png接受密碼驗(yàn)證插件

接下來,會(huì)看到設(shè)置 root 密碼的提示。輸入密碼并按回車鍵。注意,為了安全,在控制臺(tái)中不會(huì)顯示鍵入的任何內(nèi)容。

fa88ce56-3416-11ed-ba43-dac502259ad0.png輸入 MySQL root密碼

接下來,會(huì)看到一個(gè)提示,詢問你是否刪除所有匿名用戶,輸入 Y 表示是。

fa9a8984-3416-11ed-ba43-dac502259ad0.png移除匿名用戶

05以root身份登錄并調(diào)整用戶身份驗(yàn)證

MySQL Server 帶有一個(gè)客戶端實(shí)用程序,可以從 Linux 終端訪問數(shù)據(jù)庫并與之交互。

通常,未做任何配置時(shí),在 Ubuntu 上全新安裝 MySQL 后,訪問服務(wù)器的用戶將使用 auth_socket 插件進(jìn)行身份驗(yàn)證。

auth_socket 的使用會(huì)阻止服務(wù)器使用密碼對用戶進(jìn)行身份驗(yàn)證。它不僅會(huì)引發(fā)安全問題,而且還會(huì)使用戶無法借助外部程序(如 phpMyAdmin)訪問數(shù)據(jù)庫。因此我們需要將身份驗(yàn)證方法從 auth_socket 更改為使用 mysql_native_password。

為此需要打開 MySQL 控制臺(tái),并在 Linux 終端上運(yùn)行以下命令。

sudomysql
fac4ecce-3416-11ed-ba43-dac502259ad0.png登錄mysql

現(xiàn)在,我們需要檢查數(shù)據(jù)庫對不同用戶使用的身份驗(yàn)證方法。你可以通過運(yùn)行以下命令來執(zhí)行此操作。

SELECTuser,authentication_string,plugin,hostFROMmysql.user;
fafba82c-3416-11ed-ba43-dac502259ad0.png檢查用戶身份驗(yàn)證方法

從上圖中,我們可以確認(rèn) root 用戶確實(shí)使用 auth_socket 進(jìn)行了身份驗(yàn)證。我們需要使用下面的“ALTER USER”命令切換到密碼驗(yàn)證的使用。另外需要注意的是,確保使用較強(qiáng)的安全密碼(應(yīng)超過 8 個(gè)字符,結(jié)合數(shù)字、字符串和特殊符號等),因?yàn)樗鼘⑻鎿Q你在執(zhí)行上述命令“sudo mysql_secure_installation” 時(shí)設(shè)置的密碼。運(yùn)行以下命令。

ALTERUSER'root'@'localhost'IDENTIFIEDWITHmysql_native_passwordBY'your_password';
fb2c4504-3416-11ed-ba43-dac502259ad0.png更改root身份驗(yàn)證

注意,上圖中亮綠色突出顯示的文本是你設(shè)置安全密碼的地方?,F(xiàn)在,我們需要重新加載授權(quán)表并將更改更新到 MySQL 數(shù)據(jù)庫。通過執(zhí)行以下命令來執(zhí)行此操作。

FLUSHPRIVILEGES;
fb3dc82e-3416-11ed-ba43-dac502259ad0.png刷新權(quán)限

完成后,我們需要確認(rèn) root 用戶不再使用 auth_socket 進(jìn)行身份驗(yàn)證。通過再次運(yùn)行以下命令來執(zhí)行此操作。

SELECTuser,authentication_string,plugin,hostFROMmysql.user;
fb5790c4-3416-11ed-ba43-dac502259ad0.png檢查root身份驗(yàn)證

從上圖中,我們看到 root 身份驗(yàn)證方法已從“auth_socket”更改為“mysql_native_password”。

由于我們更改了 root 的身份驗(yàn)證方法,因此我們無法使用之前使用的相同命令打開 MySQL 控制臺(tái)。即“sudo mysql”。我們需要包括用戶名和密碼參數(shù),如下所示。

mysql-uroot-p

“-u”表示用戶,這里是“root”,“-p”代表“password”,一旦你按下 Enter 鍵,服務(wù)器就會(huì)提示你輸入密碼。

fb6cb4f4-3416-11ed-ba43-dac502259ad0.pngmysql -u root -p ?06創(chuàng)建新用戶

一切都設(shè)置好后,你可以創(chuàng)建一個(gè)新用戶,并授予該用戶適當(dāng)?shù)臋?quán)限。我們將創(chuàng)建一個(gè)用戶 'PyDataStudio' 并分配對所有數(shù)據(jù)庫表的權(quán)限以及更改、刪除和添加用戶權(quán)限的權(quán)限。逐行執(zhí)行下面的命令。

CREATEUSER'PyDataStudio'@'localhost'IDENTIFIEDBY'strong_password';

GRANTALLPRIVILEGESON*.*TO'PyDataStudio'@'localhost'WITHGRANTOPTION;

第一個(gè)命令將創(chuàng)建新用戶,第二個(gè)命令分配所需的權(quán)限。

我們現(xiàn)在可以通過運(yùn)行以下命令來測試我們的新用戶。

mysql-uPyDataStudio-p
fb8e2800-3416-11ed-ba43-dac502259ad0.png

測試我們的新用戶

07在Ubuntu上安裝MySQL-Server

在 Ubuntu 服務(wù)器上安裝 MySQL-server 與上述步驟沒有太大區(qū)別。但是,由于服務(wù)器是遠(yuǎn)程訪問的,我們還需要為服務(wù)器啟用遠(yuǎn)程訪問。

要安裝數(shù)據(jù)庫并配置安全選項(xiàng),只需在終端上逐行運(yùn)行以下命令。

sudoaptupdate
sudoaptinstallmysql-server
sudomysql_secure_installation

安裝成功后,需要啟用遠(yuǎn)程訪問。從邏輯上講,我們需要在 Ubuntu 服務(wù)器防火墻上打開一個(gè)端口,以便 MySQL 數(shù)據(jù)庫進(jìn)行通信。默認(rèn)情況下,MySQL 服務(wù)在 3306 端口上運(yùn)行。執(zhí)行以下命令。

sudoufwenable
sudoufwallowmysql
fbb67418-3416-11ed-ba43-dac502259ad0.pngfbc92266-3416-11ed-ba43-dac502259ad0.png啟用遠(yuǎn)程訪問

為了增強(qiáng) MySQL 數(shù)據(jù)庫的可靠性和可訪問性,可以將 MySQL-server 服務(wù)配置為在啟動(dòng)時(shí)開始運(yùn)行。執(zhí)行以下命令。

sudosystemctlenablemysql
fbe1cc58-3416-11ed-ba43-dac502259ad0.png在啟動(dòng)時(shí)啟用 MySQL Server

現(xiàn)在需要配置服務(wù)器的接口,從而服務(wù)器能夠偵聽遠(yuǎn)程可訪問的接口。我們需要編輯“mysqld.cnf”文件。運(yùn)行以下命令。

sudonano/etc/mysql/mysql.conf.d/mysqld.cnf
fbfbcdf6-3416-11ed-ba43-dac502259ad0.png配置綁定地址

默認(rèn)情況下,綁定地址為“127.0.0.1”。為公網(wǎng)接口添加綁定地址,為服務(wù)網(wǎng)絡(luò)接口添加另一個(gè)綁定地址。你可以將所有 IP 地址的綁定地址配置為“0.0.0.0”。

至此本文已經(jīng)結(jié)束,為了滿足不同用戶的需求,云朵君將會(huì)繼續(xù)分享在Linux Centos和 Windows 上安裝和配置 Mysql 的保姆級教程,希望能夠幫助到你。如果你覺得本文對你有幫助,可以點(diǎn)贊/在看/分享給朋友們~

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11171

    瀏覽量

    208480
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1921

    瀏覽量

    34506
  • Ubuntu
    +關(guān)注

    關(guān)注

    5

    文章

    555

    瀏覽量

    29434
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    793

    瀏覽量

    26353

原文標(biāo)題:在Ubuntu上安裝和配置MySQL保姆級教程

文章出處:【微信號:AI科技大本營,微信公眾號:AI科技大本營】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    樹莓派上安裝和使用MySQL

    update使用命令安裝mysql:sudo apt-get install mysql-server安裝的過程中會(huì)兩次提示你讓你輸入
    發(fā)表于 01-13 17:55

    樹莓派MYSQL安裝【附離線安裝mysql

    apt-get update3.5、輸入指令apt-get install mysql-server,綠色版安裝會(huì)提示2次輸入y回車就行了,同在線安裝方式然后就是等待,
    發(fā)表于 03-03 12:14

    樹莓派apt-get離線安裝包的制作

    的依賴包,因?yàn)閍pt-get安裝的軟件都是很多依賴的使用dpkg安裝不行apt-get -d install mysql-server apt-get installapps 這樣的命令,一般會(huì)將下載
    發(fā)表于 03-08 16:23

    linux yum安裝命令之MySQL

    yum方式安裝MySQL數(shù)據(jù)庫時(shí),只需執(zhí)行一個(gè)命令yuminstall mysql-server -y即可,yum方式的安裝原理是執(zhí)行yu
    發(fā)表于 12-28 16:31

    ubuntu安裝Vivado時(shí)出現(xiàn)錯(cuò)誤

    大家好,我正在嘗試Ubuntu 13.10安裝Vivado 2013.2我按照描述的步驟進(jìn)行操作(sudo apt-get install openjdk-7-jre,sudo m
    發(fā)表于 12-10 10:29

    mysql server的QT程序該放在哪

    目前項(xiàng)目需要使用到mysql server,QT 程序需要連接本地mysql server 。1、目前已經(jīng)編譯了 移植
    發(fā)表于 12-30 07:40

    請教下怎么安裝mysql

    安裝了官方的源,APT-GET INSTALL 之后錯(cuò)誤如下:root@localhost:/etc/apt# apt-get install mysql-server讀取包列表...完成構(gòu)建依賴樹
    發(fā)表于 01-05 06:49

    ubuntu內(nèi)安裝openssh-server出現(xiàn)錯(cuò)誤怎么解決

    錯(cuò)誤:ubuntu內(nèi)安裝openssh-server出現(xiàn)以下錯(cuò)誤錯(cuò)誤代碼:devicetool@devicetool-VirtualBox:~$ sudo apt-get insta
    發(fā)表于 04-24 11:04

    【魯班貓門禁系統(tǒng)】安裝并測試mysql

    安裝 現(xiàn)在,我們將通過 apt 包管理器安裝 MySQL。執(zhí)行下udo apt install mysql-server。具體日志如下: cat@lubancat:~/lugl/my_
    發(fā)表于 04-26 20:35

    基于IBM SERVER OPENPOWER的MYSQL數(shù)據(jù)庫方案

    根據(jù)最近的調(diào)查顯示,運(yùn)行LINUX和公司中,一半以上同時(shí)還運(yùn)行著MYSQL AB公司的MYSQL DATABASE SERVER。憑借500多萬的有效安裝,
    發(fā)表于 04-07 21:12 ?15次下載

    Ubuntu Server菜鳥配置手冊

    Ubuntu Server菜鳥配置手冊──目錄 1 安裝Ubuntu Server 4 2 簡單的配置好服務(wù)器網(wǎng)絡(luò)和SSH 12 3 搭建一
    發(fā)表于 05-22 00:54 ?54次下載

    Ubuntu 使用源碼安裝 OpenResty

    鏡像下載、域名解析、時(shí)間同步請點(diǎn)擊 阿里云開源鏡像站 ? 本文將介紹如何在 Ubuntu 使用源碼安裝 OpenResty。 ? 目標(biāo) Ubuntu 18.04 OpenResty
    發(fā)表于 12-21 11:34 ?768次閱讀

    Ubuntu Linux安裝最新Linux Kernel 6.2

    Ubuntu安裝最新的主線內(nèi)核有兩種方法。第一種是手動(dòng)下載和安裝軟件包,第二種是使用 Ubuntu Mainline Kernel
    的頭像 發(fā)表于 02-22 11:22 ?2196次閱讀

    Ubuntu編譯安裝pcl教程

    編譯安裝PCL(Point Cloud Library)是Ubuntu使用自定義選項(xiàng)進(jìn)行安裝的一種方式。
    的頭像 發(fā)表于 10-26 09:36 ?1114次閱讀

    mysql和sql server區(qū)別

    MySQL和SQL Server是兩種常見的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),用于存儲(chǔ)和管理數(shù)據(jù)庫。雖然它們都支持SQL語言,但在其他方面存在一些顯著的區(qū)別。以下是MySQL和SQL Ser
    的頭像 發(fā)表于 11-21 11:07 ?1382次閱讀