Nginx 是一个高性能的 HTTP 和反向代理服务器,也用作邮件代理服务器。MySQL 是一个关系型数据库管理系统,用于存储和管理数据。重新编译安装 MySQL 是指从源代码编译并安装 MySQL 数据库的过程。
首先,确保系统上已经安装了必要的依赖包,如 gcc
、make
、cmake
等。
sudo apt-get update
sudo apt-get install -y build-essential cmake libncurses5-dev libssl-dev
从 MySQL 官方网站下载最新的源代码包。
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.26.tar.gz
tar -zxvf mysql-8.0.26.tar.gz
cd mysql-8.0.26
创建一个用于存储 MySQL 数据的目录,并配置编译选项。
sudo mkdir /usr/local/mysql/data
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DWITH_BOOST=/usr/local/boost \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DWITH_SSL=yes
使用 make
命令编译源代码,并使用 make install
命令安装。
make -j $(nproc)
sudo make install
初始化 MySQL 数据库并设置 root 用户密码。
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup
sudo chown -R mysql:mysql /usr/local/mysql
启动 MySQL 服务并设置开机自启动。
sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
sudo update-rc.d mysql defaults
原因:可能是依赖包未安装完整或者源代码有问题。
解决方法:
原因:可能是配置文件有问题或者数据目录权限不正确。
解决方法:
/etc/my.cnf
是否正确。/usr/local/mysql/data
的权限正确。sudo chown -R mysql:mysql /usr/local/mysql/data
原因:可能是 MySQL 服务未启动或者防火墙阻止了连接。
解决方法:
sudo service mysql start
sudo ufw allow 3306
希望这些信息对你有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云