手动编译装置MySQL

预备环境

首要,确保您的体系装置了编译MySQL所需的依靠项,如GCC、make等,以及MySQL编译进程中可能需求的库文件。

关于Debian/Ubuntu体系,您能够运用以下指令装置这些依靠:

sudo apt-get update
sudo apt-get install build-essential cmake libncurses5-dev libssl-dev

关于RedHat/CentOS体系,运用:

sudo yum groupinstall "Development Tools"
sudo yum install cmake ncurses-devel openssl-devel

下载MySQL源代码

从MySQL官方网站或GitHub库房下载您希望装置的MySQL版别的源代码。以MySQL 8.0为例,您能够拜访MySQL官方网站下载页面或运用wget指令下载:

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.29.tar.gz

解压源代码包

tar -zxvf mysql-8.0.29.tar.gz
cd mysql-8.0.29

编译和装置

  1. 创立一个目录用于MySQL的编译输出:
mkdir build
cd build
  1. 运转cmake来装备MySQL编译选项:
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -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

这条指令指定了一些常用的编译选项,如装置途径、字符集、启用的存储引擎等。您能够根据需求调整这些选项。

  1. 编译MySQL:
make
  1. 装置MySQL:
sudo make install

装备MySQL

  1. 增加MySQL用户:
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
  1. 将装置目录的所有者改为MySQL用户:
sudo chown -R mysql:mysql /usr/local/mysql
  1. 初始化数据库:
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql
  1. 复制装备文件和发动脚本
sudo cp support-files/my-default.cnf /etc/my.cnf
sudo cp support-files/mysql.server /etc/init.d/mysql
  1. 发动MySQL服务器:
sudo service mysql start
  1. 设置环境变量(可选):

将MySQL目录增加到您的PATH环境变量中,以方便运转MySQL指令:

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> ~/.bash_profile
source ~/.bash_profile

完成

至此,您已经完成了MySQL的手动编译装置进程。接下来,您能够运用mysql_secure_installation脚原本进一步装备MySQL的安全选项,包括设置root暗码、删除匿名用户等。