MySQL-安装配置篇
一、MySQL二进制安装包安装
1、环境初始化
1)创建目录
mkdir /app/database --安装路径 mkdir /data/3306 --存放数据路径 mkdir /binlog/3306 --存放日志路径 将安装包上传至/app/database解压,为方便使用可制作一个软连接。 ln -s 文件名 mysql
2)清理安装环境
rpm -qa|grep mariadb
yum remove filename
3)修改环境变量
vim /etc/profile
export PATH=/app/database/mysql/bin:$PATH
[root@db01 bin]# source /etc/profile
2、创建用户及用户组
1)创建用户及用户组
useradd mysql -s /sbin/nologin 2)修改文件属主 chown -R mysql.mysql /app/ chown -R mysql.mysql /data/ chown -R mysql.mysql /binlog
3、初始化系统库表
yum install -y libaio-devel
mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3306
4、
cat > /etc/my.cnf <<EOF [mysqld] user=mysql basedir=/app/database/mysql datadir=/data/3306 server_id=6 port=3306 socket=/tmp/mysql.sock [mysql] socket=/tmp/mysql.sock EOF
5、准备启动脚本
cd ~/support-files/ cp mysql.server /etc/init.d/mysqld --方便启动 chkconfig -add mysqld --systemctl
6、启动与关闭
1)启动:/app/database/mysql/bin/mysqld 二进制文件 /app/database/mysql/bin/mysqld_safe sh脚本 /support-files/mysql.server sh脚本 ---> service/systemctl 由下往上调用 2)关闭:service mysqld stop systemctl stop mysqld /etc/init.d/mysql stop
7、
1)使用locate my.cnf命令可以列出所有的my.cnf文件 locate my.cnf 2)查看是否使用了指定目录的my.cnf ps aux|grep mysql|grep 'my.cnf' 3)查看mysql默认读取my.cnf的目录的顺序 mysql --help|grep 'my.cnf' 注:如果没有设置使用指定目录my.cnf文件及默认读取目录没有my.cnf文件,表示mysql启动时并没有加载配置文件,而是使用默认配置。
需要修改配置,可以在mysql默认读取的目录中,创建一个my.cnf文件(例如:/etc/my.cnf),把需要修改的配置内容写入,重启mysql后即可生效。
二、
mkdir -p /data/330{7..9}/data mkdir -p /binlog/330{7..9} chown -R mysql.mysql /data /binlog mv /etc/my.cnf my.cnf.bak --初始化时mysqld会读取/etc下面的my.cnf mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3307/data mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3308/data mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3309/data mv /etc/my.cnf.bak my.cnf
2、
cat > /data/3307(3308、3309)/my.cnf <<EOF [mysqld] user=mysql basedir=/app/database/mysql datadir=/data/3307(3308、3309)/data log_error=/data/3307(3308、3309)/mysql.log log_bin=/binlog/3307(3308、3309)/mysql-bin server_id=7(8,9) port=3307(3308、3309) socket=/tmp/mysql3307(3308、3309).sock EOF
3、
cd /etc/systemd/system cp mysqld.service mysqld3307.service cp mysqld.service mysqld3308.service cp mysqld.service mysqld3309.service vim mysqld3307.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf vim mysqld3308.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf vim mysqld3309.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf