搜尋
首頁資料庫mysql教程Linux環境下如何安裝MySQL資料庫

    1.概述

    MySQL二進位安裝的優點是可以在任何路徑下安裝,且具有良好的彈性,一台伺服器也可以安裝多個MySQL實例。這種方式的缺點在於它是在編譯過後的,因此效能不如從原始程式碼編譯的版本,並且無法靈活地自訂編譯參數。如果使用者即不想安裝最簡單卻不夠靈活的RPM包,又不想安裝複雜費時的源碼包,那麼已編譯好的二進位包將是最好的選擇。

    2.前期準備

    2.1下載mysql二進位安裝套件

    mysql官網:https://dev.mysql.com/downloads/mysql/

    Linux環境下如何安裝MySQL資料庫

    #因為我下載的是mysql-8.0.23-linux-glibc2.12-x86_64.tar版本,如果有最新版本,則下載最新版本就好了。

    2.2導入mysql二進位安裝套件

    透過Xftp工具把安裝套件傳送到linux系統package目錄去:

    Linux環境下如何安裝MySQL資料庫

    3.mysql部署

    解壓縮mysql安裝套件

    --切换到安装目录
    cd /app
    --解压xz压缩文件
    tar -xvf /app/package/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz

    修改mysql資料夾名稱

    --把mysql-8.0.23-linux-glibc2.12-x86_64修改为mysql文件夹名称
    mv /app/mysql-8.0.23-linux-glibc2.12-x86_64 /app/mysql

    建立data目錄

    --在mysql根目录下创建data目录,用于存放数据
    mkdir /app/mysql/data

    建立mysql用戶群組和mysql用戶

    --创建mysql用户组和mysql用户
    groupadd mysql
    useradd -g mysql mysql

    修改mysql目錄權限

    --修改mysql目录权限
    chown -R mysql.mysql /app/mysql/

    初始化資料庫

    --先切换到mysql安装目录
    cd /app/mysql
    --初始化数据库
    bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data

    Linux環境下如何安裝MySQL資料庫

    設定mysql

    --先切换到mysql.support-files目录
    cd /app/mysql/support-files
    --在mysql/support-files创建文件my-default.cnf
    touch my-default.cnf
    --复制配置文件到/etc/my.cnf
    cp -a ./my-default.cnf /etc/my.cnf
    --编辑my.cnf
    vim /etc/my.cnf

    my.cnf輸入如下設定內容:

    [client]
    port=3306
    socket=/tmp/mysql.sock
    
    [mysqld]
    port=3306
    user=mysql
    socket=/tmp/mysql.sock
    basedir=/app/mysql
    datadir=/app/mysql/data

    設定環境變數

    --编辑profile文件
    vim /etc/profile
    --配置mysql环境变量
    PATH=/data/mysql/bin:/data/mysql/lib:$PATH
    export PATH
    --使mysql环境变量生效
    source /etc/profile
    --看环境变量是否生效
    echo $PATH

    啟動mysql

    cd /app/mysql/bin
    systemctl start mysqld
    or
    service mysql start

    啟動mysql時候可能會遇到以下錯誤:

    Failed to start mysqld. service: Unit not found.

    Linux環境下如何安裝MySQL資料庫

    or

    Starting MySQL.Logging to '/app/mysql/data/dengwu.err '.

    ... ERROR! The server quit without updating PID file (/app/mysql/data/dengwu.pid).

    Linux環境下如何安裝MySQL資料庫

    解決方法如下:

    --需要安装mariadb-server
    yum install -y mariadb-server
    --然后启动mariadb服务
    systemctl start mariadb.service
    --需要的可以添加mariadb服务开机启动
    systemctl enable mariadb.service

    Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.

    Linux環境下如何安裝MySQL資料庫

    解決方法如下:

    chown -R mysql.mysql /app/mysql/

    Starting MySQL... ERROR! The server quit without updating PID file (/app/mysql/data /dengwu.pid).

    解決方法如下:

    --查看mysql进程
    ps -ef|grep mysqld
    --杀死mysql进程
    kill -9 mysql进程ID

    然後重新啟動下mysql:

    Linux環境下如何安裝MySQL資料庫

    ##4.修改mysql密碼

    root用戶第一次登入mysql,因為初始密碼我們不知道,一般情況下我們都會重新設定一個新的密碼,具體操作如下:

    --编辑my.cnf
    vim /etc/my.cnf

    輸入如下指令行:

    default_authentication_plugin=mysql_native_password

    如果忘記了密碼再加上:

    --跳过密码验证(等设置了密码就去掉)
    skip-grant-tables

    然後登入mysql:

    --登录mysql
    mysql -u root -p

    然後輸入指令查看mysql使用者群組:

    --查看mysql用户表
    select user,host,authentication_string from mysql.user;

    Linux環境下如何安裝MySQL資料庫

    看看root使用者沒有開啟遠端連線權限,如果沒有則執行以下指令:

    --修改root用户可以远程连接
    update mysql.user set host='%' where user='root';

    開啟遠端連線權限後,再來修改root使用者密碼:

    --如果host是localhost则@字符后面是localhost,反之则是%,以host结果为准
    --修改加密规则
    alter user 'root'@'%' identified by 'qwer1234' password expire never;
    --更新一下用户的密码
    alter user 'root'@'%' identified with mysql_native_password by 'qwer1234';
    --刷新权限
    flush privileges;
    --修改root用户密码
    alter user 'root'@'%' identified by 'qwer1234';

    Linux環境下如何安裝MySQL資料庫

    如果防火牆開啟了,則需要加入允許mysql連接埠存取權限,具體命令如下:

    --允许访问
    firewall-cmd --permanent --zone=public --add-port=3306/tcp
    --重新加载
    firewall-cmd --reload
    --查看是否开通访问权限
    firewall-cmd --permanent --zone=public --query-port=3306/tcp

    然後重新啟動mysql:

    --重新启动mysql
    service mysql restart;

    5.設定mysql阿里雲安全群組原則

    登入阿里雲->安全群組規則->存取規則->入方向->手動新增下列策略:

    Linux環境下如何安裝MySQL資料庫

    使用Navicat連線成功:

    Linux環境下如何安裝MySQL資料庫#

    以上是Linux環境下如何安裝MySQL資料庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    陳述
    本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除
    什么是linux设备节点什么是linux设备节点Apr 18, 2022 pm 08:10 PM

    linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

    Linux中open和fopen的区别有哪些Linux中open和fopen的区别有哪些Apr 29, 2022 pm 06:57 PM

    区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

    linux怎么判断pcre是否安装linux怎么判断pcre是否安装May 09, 2022 pm 04:14 PM

    在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

    linux中eof是什么linux中eof是什么May 07, 2022 pm 04:26 PM

    在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

    linux中什么叫端口映射linux中什么叫端口映射May 09, 2022 pm 01:49 PM

    端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

    手机远程linux工具有哪些手机远程linux工具有哪些Apr 29, 2022 pm 05:30 PM

    手机远程linux工具有:1、JuiceSSH,是一款功能强大的安卓SSH客户端应用,可直接对linux服务进行管理;2、Termius,可以利用手机来连接Linux服务器;3、Termux,一个强大的远程终端工具;4、向日葵远程控制等等。

    linux怎么查询mac地址linux怎么查询mac地址Apr 24, 2022 pm 08:01 PM

    linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

    linux中lsb是什么意思linux中lsb是什么意思May 07, 2022 pm 05:08 PM

    linux中,lsb是linux标准基础的意思,是“Linux Standards Base”的缩写,是linux标准化领域中的标准;lsb制定了应用程序与运行环境之间的二进制接口,保证了linux发行版与linux应用程序之间的良好结合。

    See all articles

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

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

    AI Clothes Remover

    AI Clothes Remover

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

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    AI Hentai Generator

    AI Hentai Generator

    免費產生 AI 無盡。

    熱門文章

    R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
    3 週前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.最佳圖形設置
    3 週前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.如果您聽不到任何人,如何修復音頻
    3 週前By尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25:如何解鎖Myrise中的所有內容
    3 週前By尊渡假赌尊渡假赌尊渡假赌

    熱工具

    EditPlus 中文破解版

    EditPlus 中文破解版

    體積小,語法高亮,不支援程式碼提示功能

    Safe Exam Browser

    Safe Exam Browser

    Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

    mPDF

    mPDF

    mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

    SublimeText3 Mac版

    SublimeText3 Mac版

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

    MantisBT

    MantisBT

    Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。