MySQL作为一个开源的关系型数据库管理系统(RDBMS),广泛应用于各种应用场景中,从个人网站到大型企业级系统
尽管现代的Linux发行版通常提供通过包管理器(如APT、YUM等)安装MySQL的简便方法,但有时候出于特定需求或定制化安装的目的,你可能需要从源代码编译安装,或者使用预编译的Tar包手动安装
本文将详细介绍如何通过Tar包在Linux上安装MySQL,确保过程详尽且具有说服力
一、准备工作 在动手之前,确保你的系统满足以下前提条件: 1.操作系统:本指南适用于大多数基于Debian和Red Hat的Linux发行版,如Ubuntu、CentOS、Fedora等
2.用户权限:你需要具备root权限或使用sudo命令来执行关键步骤
3.依赖项:安装必要的编译工具和库文件
这些可能因Linux发行版而异
对于Debian系(如Ubuntu),运行: bash sudo apt-get update sudo apt-get install build-essential cmake libncurses5-dev libssl-dev bison 对于Red Hat系(如CentOS),运行: bash sudo yum groupinstall Development Tools sudo yum install cmake ncurses-devel openssl-devel bison 4.下载MySQL Tar包:访问MySQL官方网站或其官方镜像站点,下载适合你的系统架构的预编译二进制Tar包
通常,文件名类似于`mysql-x.x.xx-linux-glibc2.xx-x86_64.tar.xz`
二、安装步骤 1.创建MySQL用户和组 出于安全和管理的考虑,建议为MySQL创建一个专用的用户和组: bash sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql 2.解压Tar包 将下载的Tar包解压到你选择的安装目录
这里假设解压到`/usr/local`: bash cd /usr/local sudo tar -xvf /path/to/mysql-x.x.xx-linux-glibc2.xx-x86_64.tar.xz sudo ln -s mysql-x.x.xx-linux-glibc2.xx-x86_64 mysql 3.配置MySQL目录权限 设置MySQL数据目录和临时文件目录的权限,通常这些数据目录包括`/usr/local/mysql/data`和`/tmp/mysql.sock`(或你自定义的sock文件路径): bash sudo mkdir /usr/local/mysql/data sudo chown -R mysql:mysql /usr/local/mysql sudo chmod750 /usr/local/mysql/data 4.初始化数据库 在MySQL5.7及以上版本中,使用`mysqld --initialize`命令初始化数据库
注意,这个步骤会生成初始的root密码,请务必记录下来: bash sudo bin/mysqld --initialize --user=mysql 对于MySQL5.6及以下版本,使用`mysql_install_db`脚本: bash sudo scripts/mysql_install_db --user=mysql 5.配置MySQL 编辑MySQL的配置文件`my.cnf`
这个文件可以放在`/etc/my.cnf`或`/usr/local/mysql/etc/my.cnf`
以下是一个基本配置示例: ini 【mysqld】 basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock user=mysql port=3306 character-set-server=utf8mb4 collation-server=utf8mb4_general_ci 【client】 socket=/tmp/mysql.sock default-character-set=utf8mb4 6.设置MySQL服务 为了方便管理,可以创建一个systemd服务文件
创建一个名为`/etc/systemd/system/mysql.service`的文件,并添加以下内容: ini 【Unit】 Description=MySQL Server After=network.target After=syslog.target 【Service】 User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf PIDFile=/usr/local/mysql/data/mysqld.pid LimitNOFILE =5000 【Install】 WantedBy=multi-user.target 然后重新加载systemd配置并启动MySQL服务: bash sudo systemctl daemon-reload sudo systemctl start mysql sudo systemctl enable mysql 7.安全配置 首次启动后,运行`mysql_secure_installation`脚本来设置root密码、删除匿名用户、禁止远程root登录、删除测试数据库等,增强MySQL的安全性: bash sudo /usr/local/mysql/bin/mysql_secure_installation 三、验证安装 1.登录MySQL 使用root用户登录MySQL,验证安装是否成功: bash /usr/local/mysql/bin/mysql -u root -p 2.检查版本信息 登录后,执行以下命令检查MySQL版本: sql SELECT VERSION(); 3.测试数据库连接 创建一个简单的测试数据库和表,插入数据并查询,以确保MySQL正常运行: sql CREATE DATABASE testdb; USE testdb; CREATE TABLE testtable(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100)); INSERT INTO testtable(name) VALUES(Hello, MySQL!); SELECTFROM testtable; 四、后续维护 -备份与恢复:定期备份数据库,可以使用`mysqldump`工具
-性能调优:根据应用需求调整my.cnf中的参数,如缓存大