二进制和源码编译安装以及yum源安装
1)下载二进制包
打开官网http://mariadb.org/
会自动出现下载链接,选好下载路径下载即可,再从windows转到linux系统上
2)准备mysql用户
*先检查是否从在mysql用户:getent passwd mysql
*创建mysql用户和/data/mysql目录,同时修改目录的所有者和所属组:useradd -r -s /sbin/nologin -m -d /data/mysql mysql
/data/mysql会自动产生一些垃圾文见删除即可:ls -a查看 rm -rf .*删除
*解压缩文件:tar xfv mariadb-10.2.23-linux-x86_64.tar.gz -C /usr/local/
*进入cd /usr/local目录,创建一个软连接名为mysql的:ln -s mariadb-10.2.25-linux-x86_64/ mysql
*ll mysql/查看所有者和所属组,进行修改:chown -R root:root mysql/(-R是递归,mysql是一个软连接+/)
*创建数据库
必须在这个情况,因为这个目录才有bin,他会去找bin
输入scripts/mysql_install_db --datadir=/data/mysql --user=mysql(指向目录和用户)
出现如图成功
*准备配置文件
先创建一个目录存放:mkdir /etc/mysql 复制配置文件改名:cp support-files/my-huge.cnf /etc/mysql/my.cnf(pwd在:/usr/local/mysql)
*修改配置文件vim /etc/mysql/my.cof
*复制mysql启动脚本
cp support-files/mysql.server /etc/init.d/mysqld(pwd在:/usr/local/mysql)
*添加mysqld到service服务中
*启动mysqld服务,并查看端口
*修改PATH路径并运行
echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh修改
. /etc/profile.d/mysql.sh运行
*启动mysql客户端,
*安全加固设置口令
终端输入mysql_secure_installation
登陆mysql客户端(mysql -uroot -p密码/mysql -uroot -p回车输入密码/mysql -p回车输入密码),三种登陆方式都可以
2)源码安装
*打开官网http://mariadb.org/
会自动出现下载链接,选好下载路径下载即可,再从windows转到linux系统上
*使用逻辑卷,创建一个逻辑卷
*创建卷组
*创建逻辑卷组
*创建/data/mysql目录:mkdir /data/mysql
*逻辑卷挂载文件系统,用blkid查看
mkfs.xfs /dev/vg1/mysql
*写入配置文件vim /etc/fstab
*查看是否挂载成功
*先检查是否从在mysql用户:getent passwd mysql
*创建mysql用户和/data/mysql目录,同时修改目录的所有者和所属组:useradd -r -s /sbin/nologin -d /data/mysql mysql
*查看并改变/data/mysql的所有者和所属组的权限
*yum安装yum install bison bison-devel zlib-devel libcurl-devel libarchivedevel boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel -y
*解压源码包tar xvf mariadb-10.2.25.tar.gz
*配置进入cd mariadb-10.2.25/
终端上输入: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回车
完成后执行下图此操作
*设置环境变量vim /etc/profile.d/mariadb-10.2.23.sh
*初始化数据库
*准备配置文件
*添加服务为开启启动
*启动服务
*yum安装mariadb
*启动成功
*安全加固设置口令
终端输入mysql_secure_installation
登陆mysql客户端(mysql -uroot -p密码/mysql -uroot -p回车输入密码/mysql -p回车输入密码),三种登陆方式都可以
3)yum源安装
*yum源安装yum install mariadb-server
*启动服务查看
*创建每个存放的目录:mkdir /mysql/{3306,3307,3308}/{data,bin,log,socket,pid,etc} -pv
*ps aux查看进程,现在要把路径改为我们创建的目录
*关闭系统再带的mysql
systemctl stop mariadb
*查看现存放的位置:ls /var/lib/mysql/,并用mysql_install_db制定目录
mysql_install_db --datadir=/mysql/{3306/3307/3308}/data/ --user=mysql
*设置/mysql/的所有者和所属组
chown -R mysql.mysql /mysql/
*配置文件
cp /etc/my.cnf /mysql/3306/etc/ cp /etc/my.cnf /mysql/3307/etc/ cp /etc/my.cnf /mysql/3308/etc/
*进入目录cd /mysql/3306/bin/
编写vim /mysqld
#!/bin/bash
port=3306
mysql_user="root"
mysql_pwd="990805kuid"
cmd_path="/usr/bin"
mysql_basedir="/mysql"
mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock"
function_start_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "Starting MySQL...
"
${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf &> /dev/null &
else
printf "MySQL is running...
"
exit
fi
}
function_stop_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "MySQL is stopped...
"
exit
else
printf "Stoping MySQL...
"
${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
fi
}
function_restart_mysql()
{
printf "Restarting MySQL...
"
function_stop_mysql
sleep 2
function_start_mysql
}
case $1 in
start)
function_start_mysql
;;
stop)
function_stop_mysql
;;
restart)
function_restart_mysql
;;
*)
printf "Usage: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}
"
esac
chmod +x mysqld赋予权限,依次类推
*启动服务
/mysql/3306/bin/mysqld start /mysql/3307/bin/mysqld start /mysql/3308/bin/mysqld start
*链接数据库
*设置密码,密码与上面写的脚本密码匹配
mysqladmin -S /mysql/3306/socket/mysql.sock password 990805kuid
mysqladmin -S /mysql/3307/socket/mysql.sock password 990805kuid
mysqladmin -S /mysql/3308/socket/mysql.sock password 990805kuid
登陆如下图