1、通过编译、二进制安装MySQL5.7
【1】源码编译安装MySQL5.7
第一步:环境准备:
关闭selinux,防火墙、安装基础程序。
第二步:下载好安装包
https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.36.tar.gz
第三步:安装依赖包
yum -y install gcc gcc-c++ cmake bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel perl-Data-Dumper
第四步:建立mysql文件夹和用户以及权限。解压后放入对应的目录
useradd -r -s /sbin/nologin -d /data/mysql mysql
mkdir /data/mysql;chown mysql.mysql /data/mysql
tar xvf mysql-boost-5.7.36.tar.gz -C /usr/local/src/
第五步:进入目录执行下面操作
cmake . \
-DCMAKE_INSTALL_PREFIX=/apps/mysql \
-DMYSQL_DATADIR=/data/mysql/ \
-DSYSCONFDIR=/etc/ \
-DMYSQL_USER=mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=boost/boost_1_59_0
make -j 4 && make install
等待安装完成。
第六步:准备环境变量
echo 'PATH=/apps/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
第七步:生成数据库文件
cd /apps/mysql/
./bin/mysql_install_db --datadir=/data/mysql/ --user=mysql
第八步:准备配置文件
vim /etc/my.cnf
[mysqld]
explicit_defaults_for_timestamp=true
datadir=/data/mysql/
basedir=/apps/mysql
port=3306
pid-file=/data/mysql/mysql.pid
socket=/data/mysql/mysql.socket
symbolic-links=0
character_set_server=utf8
user=mysql
[mysqld_safe]
log-error=/data/mysql/mysql.log
[client]
port=3306
socket=/data/mysql/mysql.socket
default-character-set=utf8
第九步:准备启动脚本,并启动服务
cp /apps/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
service mysqld start
第十步:安全初始化
mysql_secure_installation
【2】二进制安装MySQL5.7
第一步:安装必要软件、准备组和用户
yum -y install gcc gcc-c++ cmake bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel perl-Data-Dumper
groupadd -r -g 306 mysql
useradd -r -g 306 -u 306 -d /data/mysql mysql
第二步:准备数据目录
mkdir /data/mysql
chown mysql:mysql /data/mysql
第三步:准备二进制程序
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
tar xvf mysql-VERSION-linux-x86_64.tar.gz -C /usr/local/
cd /usr/local
ln -sv mysql-5.7.36-linux-glibc2.12-x86_64 mysql
chown -R root.root /usr/local/mysql/
第四步:准备配置文件
vim /etc/my.cnf
[mysqld]
explicit_defaults_for_timestamp=true
datadir=/data/mysql/
basedir=/usr/local/mysql
port=3306
pid-file=/data/mysql/mysql.pid
socket=/data/mysql/mysql.socket
symbolic-links=0
character_set_server=utf8
user=mysql
[mysqld_safe]
log-error=/data/mysql/mysql.log
[client]
port=3306
socket=/data/mysql/mysql.socket
default-character-set=utf8
【注】一定要弄好配置文件
第五步:创建数据库文件
cd /usr/local/mysql
bin/mysqld --initialize-insecure --datadir=/data/mysql/ --user=mysql
第六步: 准备服务脚本,并启动服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
systemctl start mysqld
第七步:PATH路径
echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
. /etc/profile.d/mysql.sh
第八步:安全初始化
/usr/local/mysql/bin/mysql_secure_installation
2、二进制安装mariadb10.4
第一步:资源准备
文件下载:
https://mariadb.org/download/?t=mariadb&p=mariadb&r=10.6.7&os=Linux&cpu=x86_64&i=systemd&m=aliyun
```
官方文档:
https://mariadb.com/kb/en/installing-mariadb-binary-tarballs/
第二步:用户、文件准备
groupadd mysql
useradd -g mysql mysql
mkdir /data/mysql
chown mysql.mysql /data/mysql
mkdir /var/log/mariadb
chmod 777 /var/log/mariadb
mkdir /var/run/mariadb
chmod 777 /var/run/mariadb
tar xvf mariadb-10.6.7-linux-systemd-x86_64.tar.gz -C /usr/local/
ln -s mariadb-10.6.7-linux-systemd-x86_64 mysql
配置文件
vim /etc/my.cnf
[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
!includedir /etc/my.cnf.d
第三步:初始化数据库
cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/mysql --datadir=/data/mysql
【注】
--user 是用mysql用户运行
--basedir=是mysql程序的位置
--datadir=是打算让数据存放的位置
执行后可以看到/data/mysql中的文件:
第四步:配置环境变量
export PATH=$PATH:/usr/local/mysql/bin/
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
第五步:启动服务
systemctl start mysqld