博客
关于我
centos 7.3 启动mysql_centos7.3 搭建MySQL
阅读量:804 次
发布时间:2023-01-26

本文共 3064 字,大约阅读时间需要 10 分钟。

MySQL 数据库安装配置详细指南

安装和配置 MySQL 数据库是一项较为常见的任务,但需要仔细理解每一步操作以确保顺利完成。本文将基于个人实践经验,逐步指导如何在 Ubuntu/Linux 服务器环境下安装和配置 MySQL 5.7 并进行初步цион设置。

一、安装软件环境

首先,我们需要准备安装的软件环境。为了顺利完成本次设置,建议使用以下软件版本:

  • 操作系统:Ubuntu 18.04+

  • 必要的编译工具:安装了 gcc、gcc++ 等开发环境工具

  • 安装编译环境

    sudo apt-get install gcc gcc-c++ ncurses-devel bison cmake

    下载并安装 boost 库

    boost 是一个强大的 C++ 辅助库,在 MySQL 的构建过程中作用重要。当前版本推荐使用 1.59.0:

    sudo apt-get install curl tartar zxvf boost_1_59_0.tar.gz -C /usr/local/sudo mv boost_1_59_0/ boost

    创建数据库管理用户

    为数据库服务分配管理用户权限:

    sudo useradd -s /sbin/nologin mysql

    安装 MySQL 数据库

    下载适用于目标平台的 MySQL 5.7 tariffs:

    tar zxvf mysql-5.7.17.tar.gz -C /mysql/cd mysql-5.7.17

    通过 cmake 配置构建

    根据需求配置构建环境:

    cmake \  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \  -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \  -DSYSCONFDIR=/etc \  -DSYSTEMD_PID_DIR=/usr/local/mysql \  -DDEFAULT_CHARSET=utf8 \  -DDEFAULT_COLLATION=utf8_general_ci \  -DWITH_INNOBASE_STORAGE_ENGINE=1 \  -DWITH_ARCHIVE_STORAGE_ENGINE=1 \  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \  -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \  -DMYSQL_DATADIR=/usr/local/mysql/data \  -DWITH_BOOST=/usr/local/boost \  -DWITH_SYSTEMD=1

    开始构建

    接着进行构建和安装:

    make && make install

    由于构建过程可能会遇到错误,需要注意以下几点:

    • CMake 错误处理:若发生 cmake 错误,请清除 CMakeCache.txt 文件后重新运行 cmake,并确保所有依赖已经正确安装。
    • 编译时间较长:请耐心等待,直至所有项目均完成编译。

    二、目录和权限设置

    在安装完成后,我们需要设置相关目录的权限:

    sudo chown -R mysql:mysql /usr/local/mysql/

    特别提示:MySQL 5.7 与前几代版本在配置文件方面有差异,建议仔细检查并根据实际需要修改配置文件。

    三、配置数据库服务

    修改 my.cnf 配置文件

    默认配置文件位于 /etc/my.cnf,我们需要根据实际需求进行修改。以下是一个基本配置示例:

    [client]port = 3306default-character-set=utf8socket = /usr/local/mysql/mysql.sock[mysql]port = 3306default-character-set=utf8socket = /usr/local/mysql/mysql.sock[mysqld]user = mysqlbasedir = /usr/local/mysqldatadir = /usr/local/mysql/dataport = 3306character_set_server=utf8pid-file = /usr/local/mysql/mysqld.pidsocket = /usr/local/mysql/mysql.sockserver-id = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTESchown mysql:mysql /etc/my.cnf

    设置环境变量

    为数据库服务添加可执行路径到系统环境变量中:

    echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' > /etc/profileecho 'export PATH' > /etc/profilesource /etc/profile

    四、数据库初始化

    重新准备数据库目录

    cd /usr/local/mysql/bin/mysqld \  --initialize-insecure \  --user=mysql \  --basedir=/usr/local/mysql \  --datadir=/usr/local/mysql/data

    ###start数据库服务

    systemctl daemon-reloadsudo systemctl enable mysqldsudo systemctl start mysqld# 检查运行状态sudo systemctl status mysqld

    添加数据库用户

    建议为数据库操作人员授权远程访问权限。使用 MySQL 语句进行权限分配:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password_here' WITH GRANT OPTION;

    提示:根据实际需求可对权限进行精细化管理,确保仅授权必要操作人员使用数据库。

    五、验证运行状态

    完成配置后,建议对数据库服务进行全面验证:

    systemctl status mysqld

    进一步验证数据库通信是否正常:

    netstat -tuln | grep 3306

    六、注意事项

  • 防火墙配置:请确保防火墙设置正确,允许 MySQL 关于 3306 端口的通信。

    sudo ufw allow out 3306
  • 数据备份与恢复:建议及时备份数据库数据,确保数据安全。如果需要应用数据恢复,记得备份策略的执行。

  • 定期维护:定期进行数据库监控、优化和清理操作,确保数据库运行状态良好。

  • 本文介绍了 MySQL 5.7 在 Ubuntu/Linux 环境下的安装与配置方法,并提供了基础的操作指南。通过以上步骤,读者可以成功搭建一个功能完善的 MySQL 数据库服务。之后,可以根据实际应用需求进一步优化数据库配置,引入高可用性架构(如主从复制、Galera cluster 等)。

    转载地址:http://kyryk.baihongyu.com/

    你可能感兴趣的文章
    Nginx配置文件nginx.conf中文详解(总结)
    查看>>
    Nginx配置自带的stub状态实现活动监控指标
    查看>>
    nginx配置详解、端口重定向和504
    查看>>
    Nginx配置负载均衡到后台网关集群
    查看>>
    Nginx配置限流,技能拉满!
    查看>>
    Nginx配置静态代理/静态资源映射时root与alias的区别,带前缀映射用alias
    查看>>
    Nginx面试三连问:Nginx如何工作?负载均衡策略有哪些?如何限流?
    查看>>
    Nginx:NginxConfig可视化配置工具安装
    查看>>
    ngModelController
    查看>>
    ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
    查看>>
    ngrok内网穿透可以实现资源共享吗?快解析更加简洁
    查看>>
    NHibernate学习[1]
    查看>>
    NHibernate异常:No persister for的解决办法
    查看>>
    NIFI1.21.0_java.net.SocketException:_Too many open files 打开的文件太多_实际操作---大数据之Nifi工作笔记0051
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_更新时如果目标表中不存在记录就改为插入数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0059
    查看>>
    NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
    查看>>
    NIFI1.21.0最新版本安装_连接phoenix_单机版_Https登录_什么都没改换了最新版本的NIFI可以连接了_气人_实现插入数据到Hbase_实际操作---大数据之Nifi工作笔记0050
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_插入修改删除增量数据实时同步_通过分页解决变更记录过大问题_01----大数据之Nifi工作笔记0053
    查看>>