mysql的三种安装方式

187 阅读1分钟

虚拟机软件:vmware 15.5.0
Linux系统:centOS7
mariadb 版本:10.2.37

centOS7上,MySQL安装包已经替换为mariadb。

一、二进制安装

安装步骤

1. 准备用户

useradd -r –d /data/mysql mysql -s /sbin/nologin

2. 准备数据目录

mkdir /data/mysql
chown mysql:mysql /data/mysql

3. 准备二进制程序

tar xf mariadb-10.2.37-linux-x86_64.tar.gz -C /usr/local
cd /usr/local
ln -s mariadb-10.2.37-linux-x86_64 mysql
chown -R mysql:mysql /usr/local/mysql/

image.png

4. 准备配置文件

mkdir /etc/mysql/
cp support-files/my-large.cnf /etc/mysql/my.cnf

# [mysqld]中添加三个选项:
datadir = /data/mysql
innodb_file_per_table = on
skip_name_resolve = on #禁止主机名解析

# 注意不要和 /etc/my.cnf 冲突!

5. 创建数据库文件

cd /usr/local/mysql/
./scripts/mysql_install_db --datadir=/data/mysql --user=mysql

image.png

执行数据库初始化脚本,生成对应的数据库文件,注意初始化后一些重要输出。

PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:

'./bin/mysqladmin' -u root password 'new-password'
'./bin/mysqladmin' -u root -h centos7E.localdomain password 'new-password'

Alternatively you can run:
'./bin/mysql_secure_installation'

可以查看/data/mysql目录下已生成对应的文件。

image.png

6. 准备服务脚本,并启动服务

cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
service mysqld start

7. PATH路径

echo ‘PATH=/user/local/mysql/bin:$PATH’ > /etc/profile.d/mysql

8. 安全初始化

# 根据提示选择即可
/user/local/mysql/bin/mysql_secure_installation

二、编译安装

安装步骤

1. 安装依赖包

yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boostdevel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssldevel libevent-devel libaio-devel

这里笔者在装boostdevel openssldevel这两个包时,失败了,yum list 搜索了下,改为boost-devel,openssl-devel

yum install -y boost-devel openssl-devel

2. 准备用户和数据目录

useradd –r –s /sbin/nologin –d /data/mysql/ mysql
mkdir /data/mysql
chown mysql.mysql /data/mysql
tar xvf mariadb-10.2.37.tar.gz

3. 编译&&安装

cd mariadb-10.2.37/
cmake . \
-DCMAKE_INSTALL_PREFIX=/app/mysql \
-DMYSQL_DATADIR=/data/mysql/ \
-DSYSCONFDIR=/etc/mysql \
-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


make && make install

编译了大半天 image.png

image.png

看下 /app/mysql目录生成,看结构熟悉吧!不就是二进制包解压之后的内容!

image.png

后面的步骤和二进制安装大同小异,编译安装相比二进制安装其实就多了编译的过程。

# 准备环境变量
echo 'PATH=/app/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
. /etc/profile.d/mysql.sh

# 生成数据库文件
 cd /app/mysql
 scripts/mysql_install_db --datadir=/data/mysql/ --user=mysql
 
 # 准备配置文件
 cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf
 
 # 准备启动脚本
 cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
 
 # 启动服务
 chkconfig --add mysqld ;service mysqld start

三、yum安装

yum安装比较简单,系统自带的数据库版本比较旧,可到官网或者国内镜像云下载,或者配置yum源,此处不做赘述。
MariaDB 官网
华为云

供参考

# 配置yum源
cat << EOF > /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = https://repo.huaweicloud.com/mariadb/yum/10.2/centos/7.6/x86_64
#gpgkey=https://mirrors.xtom.com.hk/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=0
EOF

# 安装
yum install mariadb-server -y