本文共 3064 字,大约阅读时间需要 10 分钟。
安装和配置 MySQL 数据库是一项较为常见的任务,但需要仔细理解每一步操作以确保顺利完成。本文将基于个人实践经验,逐步指导如何在 Ubuntu/Linux 服务器环境下安装和配置 MySQL 5.7 并进行初步цион设置。
首先,我们需要准备安装的软件环境。为了顺利完成本次设置,建议使用以下软件版本:
操作系统:Ubuntu 18.04+
必要的编译工具:安装了 gcc、gcc++ 等开发环境工具
sudo apt-get install gcc gcc-c++ ncurses-devel bison cmake
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 5.7 tariffs:
tar zxvf mysql-5.7.17.tar.gz -C /mysql/cd mysql-5.7.17
根据需求配置构建环境:
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
由于构建过程可能会遇到错误,需要注意以下几点:
在安装完成后,我们需要设置相关目录的权限:
sudo chown -R mysql:mysql /usr/local/mysql/
特别提示:MySQL 5.7 与前几代版本在配置文件方面有差异,建议仔细检查并根据实际需要修改配置文件。
默认配置文件位于 /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/