目录
1.概述
2.前期准备
2.1下载mysql二进制安装包
2.2导入mysql二进制安装包
3.mysql部署
4.修改mysql密码
5.配置mysql阿里云安全组策略
首页 数据库 mysql教程 Linux环境下如何安装MySQL数据库

Linux环境下如何安装MySQL数据库

May 31, 2023 am 10:46 AM
mysql linux

    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

    热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

    使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

    热门文章

    <🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
    4 周前 By 尊渡假赌尊渡假赌尊渡假赌
    北端:融合系统,解释
    4 周前 By 尊渡假赌尊渡假赌尊渡假赌
    Mandragora:巫婆树的耳语 - 如何解锁抓钩
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌

    热工具

    记事本++7.3.1

    记事本++7.3.1

    好用且免费的代码编辑器

    SublimeText3汉化版

    SublimeText3汉化版

    中文版,非常好用

    禅工作室 13.0.1

    禅工作室 13.0.1

    功能强大的PHP集成开发环境

    Dreamweaver CS6

    Dreamweaver CS6

    视觉化网页开发工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神级代码编辑软件(SublimeText3)

    热门话题

    Java教程
    1672
    14
    CakePHP 教程
    1428
    52
    Laravel 教程
    1332
    25
    PHP教程
    1276
    29
    C# 教程
    1256
    24
    在MySQL中解释外键的目的。 在MySQL中解释外键的目的。 Apr 25, 2025 am 12:17 AM

    在MySQL中,外键的作用是建立表与表之间的关系,确保数据的一致性和完整性。外键通过引用完整性检查和级联操作维护数据的有效性,使用时需注意性能优化和避免常见错误。

    比较和对比Mysql和Mariadb。 比较和对比Mysql和Mariadb。 Apr 26, 2025 am 12:08 AM

    MySQL和MariaDB的主要区别在于性能、功能和许可证:1.MySQL由Oracle开发,MariaDB是其分支。2.MariaDB在高负载环境中性能可能更好。3.MariaDB提供了更多的存储引擎和功能。4.MySQL采用双重许可证,MariaDB完全开源。选择时应考虑现有基础设施、性能需求、功能需求和许可证成本。

    SQL与MySQL:澄清两者之间的关系 SQL与MySQL:澄清两者之间的关系 Apr 24, 2025 am 12:02 AM

    SQL是一种用于管理关系数据库的标准语言,而MySQL是一个使用SQL的数据库管理系统。SQL定义了与数据库交互的方式,包括CRUD操作,而MySQL实现了SQL标准并提供了额外的功能,如存储过程和触发器。

    MySQL:数据库,PHPMYADMIN:管理接口 MySQL:数据库,PHPMYADMIN:管理接口 Apr 29, 2025 am 12:44 AM

    MySQL和phpMyAdmin可以通过以下步骤进行有效管理:1.创建和删除数据库:在phpMyAdmin中点击几下即可完成。2.管理表:可以创建表、修改结构、添加索引。3.数据操作:支持插入、更新、删除数据和执行SQL查询。4.导入导出数据:支持SQL、CSV、XML等格式。5.优化和监控:使用OPTIMIZETABLE命令优化表,并利用查询分析器和监控工具解决性能问题。

    如何理解C  中的DMA操作? 如何理解C 中的DMA操作? Apr 28, 2025 pm 10:09 PM

    DMA在C 中是指DirectMemoryAccess,直接内存访问技术,允许硬件设备直接与内存进行数据传输,不需要CPU干预。1)DMA操作高度依赖于硬件设备和驱动程序,实现方式因系统而异。2)直接访问内存可能带来安全风险,需确保代码的正确性和安全性。3)DMA可提高性能,但使用不当可能导致系统性能下降。通过实践和学习,可以掌握DMA的使用技巧,在高速数据传输和实时信号处理等场景中发挥其最大效能。

    MacOS与Linux:探索差异和相似之处 MacOS与Linux:探索差异和相似之处 Apr 25, 2025 am 12:03 AM

    Macosandlinuxbothofferuniquerenths:Macosprovidesa-frignlylexperienceWithExcelenthardArdWareIntegration,而Lilinuxexcelsinflexibilitionallibility andCommunitysupport.macos,evartednebyBybyBybyBybyByapple,issone bybyapple,seknoybyapple

    怎样在C  中处理高DPI显示? 怎样在C 中处理高DPI显示? Apr 28, 2025 pm 09:57 PM

    在C 中处理高DPI显示可以通过以下步骤实现:1)理解DPI和缩放,使用操作系统API获取DPI信息并调整图形输出;2)处理跨平台兼容性,使用如SDL或Qt的跨平台图形库;3)进行性能优化,通过缓存、硬件加速和动态调整细节级别来提升性能;4)解决常见问题,如模糊文本和界面元素过小,通过正确应用DPI缩放来解决。

    给MySQL表添加和删除字段的操作步骤 给MySQL表添加和删除字段的操作步骤 Apr 29, 2025 pm 04:15 PM

    在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,删除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段时,需指定位置以优化查询性能和数据结构;删除字段前需确认操作不可逆;使用在线DDL、备份数据、测试环境和低负载时间段修改表结构是性能优化和最佳实践。

    See all articles