MySQL,MariaDB 安装
1)yum多实例安装
1.编辑yum源
[mariadb]
name = MariaDB
baseurl = http://mirrors.ustc.edu.cn/mariadb/yum/10.2/centos7-amd64/
gpgkey=http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
[root@magedu ~]#sudo yum install MariaDB-server MariaDB-client
2.创建所需文件夹
[root@Centos7 ~]#mkdir /mysql/{3306,3307,3308}/{data,bin,log,socket,pid,etc} -pv
[root@Centos7 ~]#tree /mysql
3.安装库 (二进制提前创建用户)
[root@Centos7 ~]#mysql_install_db --datadir=/mysql/3306/data/ --user=mysql
[root@Centos7 ~]#mysql_install_db --datadir=/mysql/3307/data/ --user=mysql
[root@Centos7 ~]#tree /mysql
4.赋予权限
[root@Centos7 ~]#chown -R mysql.mysql /mysql/
5.修改配置文件 (二进制安装需要找到 /usr/local/mysql/support-files/my-huge.cnf )
[root@Centos7 ~]#cp /etc/my.cnf /mysql/3306/etc/
[root@Centos7 ~]#vim /mysql/3306/etc/my.cnf
[mysqld]
port=3306
datadir=/mysql/3306/data
socket=/mysql/3306/socket/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/mysql/3306/log/mariadb.log
pid-file=/mysql/3306/pid/mariadb.pid
[root@Centos7 ~]#cp /mysql/3306/etc/my.cnf /mysql/3307/etc/my.cnf
[mysqld]
port=3307
datadir=/mysql/3307/data
socket=/mysql/3307/socket/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/mysql/3307/log/mariadb.log
pid-file=/mysql/3307/pid/mariadb.pid
6.修改启动文件
因为是yum安装可以临时启动查看 mysqld_safe所在地方
[root@Centos7 ~]#systemctl start mariadb
[root@Centos7 ~]#ps aux
[root@Centos7 ~]#systemctl stop mariadb
[root@Centos7 ~]#chmod +x /mysql/3306/bin/mysqld
[root@Centos7 ~]#vim /mysql/3306/bin/mysqld
#!/bin/bash
port=3306
mysql_user="root"
mysql_pwd="centos"
cmd_path="/usr/bin" --看下mysqld_safe在哪个路径二进制在就是解压文件夹那里/usr/local/mysql/bin
mysql_basedir="/mysql"
mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock"
function_start_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "Starting MySQL...\n"
${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf &> /dev/null &
else
printf "MySQL is running...\n"
exit
fi
}
function_stop_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "MySQL is stopped...\n"
exit
else
printf "Stoping MySQL...\n"
${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
fi
}
7.操作
启动
[root@Centos7 ~]#/mysql/3306/bin/mysqld start
[root@Centos7 ~]#ss -ntl
进入
[root@Centos7 ~]#mysql -S /mysql/3306/socket/mysql.sock
MariaDB [(none)]> status --可以查看状态
--修改口令后者是在my。cnf里面密码清空关闭的时候就不需要输入密码了
[root@Centos7 ~]# mysqladmin -S /mysql/3306/socket/mysql.sock password 1234
--所改的密码必须和my.cnf里面的密码一样才可以关闭
[root@Centos7 ~]# mysqladmin -S /mysql/3306/socket/mysql.sock -p1234 password centos
[root@Centos7 ~]#/mysql/3306/bin/mysqld stop
Stoping MySQL...
the end
2)二进制多实例安装
1.准备用户
[root@Centos7 ~]#mkdir /data/mysql
[root@Centos7 ~]#useradd -r -s /sbin/nologin -d /data/mysql mysql
2.解压缩
[root@Centos7 ~]#tar xvf mariadb-10.2.25-linux-x86_64.tar.gz -C /usr/local/
[root@Centos7 ~]#cd /usr/local/
[root@Centos7 local]#ln -s mariadb-10.2.25-linux-x86_64/ mysql
3.更改权限
[root@Centos7 local]#chown -R root.root mysql/
4.创建所需文件夹
[root@Centos7 ~]#mkdir /mysql/{3306,3307,3308}/{data,bin,log,socket,pid,etc} -pv
[root@Centos7 ~]#tree /mysql
5.安装库 (二进制提前创建用户)
[root@Centos7 mysql]#pwd
/usr/local/mysql
[root@Centos7 mysql]#scripts/mysql_install_db --datadir=/mysql/3306/data/ --user=mysql
[root@Centos7 mysql]#scripts/mysql_install_db --datadir=/mysql/3307/data/ --user=mysql
7.赋予权限
[root@Centos7 ~]#chown -R mysql.mysql /mysql/
8.准备配置文件 记得改权限
修改my.cnf
[root@Centos7 mysql]#vim /mysql/3306/etc/my.cnf
[root@Centos7 ~]#chown mysql.mysql /mysql/3306/etc/my.cnf
[root@Centos7 ~]#chmod +x /mysql/3306/etc/my.cnf
[root@Centos7 mysql]#vim /mysql/3307/etc/my.cnf
修改mysqld
[root@Centos7 ~]#vim /mysql/3306/bin/mysqld
[root@Centos7 ~]#chmod +x /mysql/3306/bin/mysqld
[root@Centos7 ~]#chown mysql.mysql /mysql/3306/bin/mysqld
[root@Centos7 ~]#cp /mysql/3306/bin/mysqld /mysql/3307/bin/mysqld
9.加入还环境变量
[root@Centos7 bin]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@Centos7 bin]#. /etc/profile.d/mysql.sh
[root@Centos7 bin]#mysql -S /mysql/3306/socket/mysql.sock
二进制安装
1.准备软件
项目官方:https://downloads.mariadb.org/mariadb/repositories/
国内镜像:https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/
https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/
https://mirrors.tuna.tsinghua.edu.cn/mariadb//mariadb-
10.2.23/bintar-linux-x86_64/mariadb-10.2.23-linux-x86_64.tar.gz
1.准备用户
[root@Centos7 ~]#mkdir /data/mysql
[root@Centos7 ~]#useradd -r -s /sbin/nologin -d /data/mysql mysql
2.解压缩
[root@Centos7 ~]#tar xvf mariadb-10.2.25-linux-x86_64.tar.gz -C /usr/local/
[root@Centos7 ~]#cd /usr/local/
[root@Centos7 local]#ln -s mariadb-10.2.25-linux-x86_64/ mysql
3.更改权限
[root@Centos7 local]#chown -R root.root mysql/
4.安装
[root@Centos7 mysql]#pwd
/usr/local/mysql
[root@Centos7 mysql]#scripts/mysql_install_db --datadir=/data/mysql --user=mysql
5.准备配置文件
[root@Centos7 mysql]#mkdir /etc/mysql/ ;cp support-files/my-huge.cnf /etc/mysql/my.cnf
vim /etc/mysql/my.cnf
[mysqld]
datadir=/data/mysql --数据库目录
6.制作开机启动文件
[root@Centos7 mysql]#cp support-files/mysql.server /etc/init.d/mysqld
[root@Centos7 mysql]# chkconfig --add mysqld && chkconfig --list
7.启动数据库
[root@Centos7 mysql]#service mysqld start
8.配置环境变量
[root@Centos7 mysql]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@Centos7 mysql]#source /etc/profile.d/mysql.sh
9.安全初始化
[root@Centos7 mysql]#/usr/local/mysql/bin/mysql_secure_installation
编译安装
1.下载和准备依赖包
wget http://mirrors.tuna.tsinghua.edu.cn/mariadb//mariadb-10.2.23/source/mariadb-10.2.23.tar.gz
yum install bison bison-devel zlib-devel libcurl-devel \
libarchive-devel boost-devel gcc gcc-c++ \
cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel \
libevent-devel libaio-devel libdb-cxx-devel
2.准用户和数据目录
useradd -r -s /sbin/nologin -d /data/mysql/ mysql
mkdir /data/mysql/
chown mysql.mysql /data/mysql
tar -xvf mariadb-10.2.18.tar.gz
3.cmake编译安装
cd mariadb-10.2.18/
cmake . \
-DCMAKE_INSTALL_PREFIX=/app/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
提示:如果出错,执行rm -f CMakeCache.txt
4.make && make install
5.设置环境变量
vim /etc/profile.d/mariadb-10.2.23.sh
#!/bin/bash
export PATH=/app/mysql/bin:$PATH
source /etc/profile.d/mariadb-10.2.23.sh
生成数据库文件
cd /app/mysql/
scripts/mysql_install_db --datadir=/data/mysql/ --user=mysql
6.准备配置文件
cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf
7.添加服务为开启启动
cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
8.执MariaDB安全脚本,启动mysql
chkconfig --add mysqld
chkconfig --list
service mysqld start
mysql_secure_installation