1. 程式人生 > >centos-7yum安裝(mairadb)實現mysql多實例

centos-7yum安裝(mairadb)實現mysql多實例

mysql

步驟:
1、安裝mariadb-server包
yum mariadb-server
2、建一個主文件夾三個副文件夾,三個副文件夾用來分別存放三個實力 註意:盡量把這個多實例放在邏輯卷中比較好一點
a、mkdir /mysqldb/{3306,3307,3308}/{etc,data,pid,socket,log}
技術分享圖片
b、修改目錄權限
chown -R mysql:mysql /mysqldb/
3、生成數據庫
mysql_install_db --datadir=/mysql/3306/data --user=mysql
mysql_install_db --datadir=/mysql/3307/data --user=mysql
mysql_install_db --datadir=/mysql/3308/data --user=mysql
4、復制/etc/my.cnf到各個實例的etc目錄下
cp -a /etc/my.cnf /mysql/3306/etc/
cp -a /etc/my.cnf /mysql/3307/etc/
cp -a /etc/my.cnf /mysql/3308/etc/
5、修改個目錄復制過來的my.cnf
技術分享圖片
6、準備服務腳本並將他們復制到各個實例的一級目錄下,並修改權限為700,加上執行權限
復制文件
cp mysqld mysql/{3306,3307,3308}
修改權限
chmod 700 /mysql/3306/mysqld
chmod 700 /mysql/3307/mysqld
chmod 700 /mysql/3308/mysqld
7、服務腳本
cat mysqld
#!/bin/bash
port=3306 "註意這個要根據相應的端口進行修改"
mysql_user="root" "用戶"
mysql_pwd="centos" "這個是密碼"
cmd_path="/usr/bin" "這個是指頂mariadb命令的路徑"
mysql_basedir="/mysqldb"
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
}

function_restart_mysql()
{
printf "Restarting MySQL...\n"
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}\n"
esac
8、啟動服務
a.註意啟動服務需要敲上全路徑才能啟動
/mysqldb/3306/mysqld start|stop|restart
技術分享圖片
9.連接數據庫的方法
a. mysql -S /mysqldb/3306/socket/mysql.sock
b. mysql -S /mysqldb/3307/socket/mysql.sock
c. mysql -S /mysqldb/3308/socket/mysql.sock
10.添加mysql,root密碼
a. mysqladmin -uroot -S /mysqldb/3306/socket/mysql.sock password ‘centos‘
b. mysqladmin -uroot -S /mysqldb/3307/socket/mysql.sock password ‘centos‘
c. mysqladmin -uroot -S /mysqldb/3308/socket/mysql.sock password ‘centos‘
11.也可以進入mysql進行更改密碼
1、登入mysql
a.mysql -S /mysqldb/3306/socket/mysql.sock
i.查看用戶密碼表
select user,password,host from mysql.user;
ii.修改添加root密碼
update mysql.user set password=password("centos") where user=‘root‘;
iii.刪除空賬號用戶
drop user ‘‘@localhost;
iv.讓權限生效
1.flush privileges;
技術分享圖片

centos-7yum安裝(mairadb)實現mysql多實例