MySQL 安装
1.创建操作系统用户
groupadd mysql
useradd -g mysql mysql
2.解压二进制包,建立软链接
cd /usr/local
将mysql-8.0.42-linux-glibc2.17-x86_64.tar.xz文件传输到/usr/local/目录下,解压:
tar xvf mysql-VERSION-OS.tar.xz
ln -s mysql-8.0.33-linux-glibc2.12-x86_64 mysql
3.编辑配置文件
第一种方式:
mv /etc/my.cnf /etc/my.cnf_bak
将my.cnf文件,传输到/etc/的目录下!
第二种方式:
vi /etc/my.cnf
client
scoket = /data/mysql/3306/data/mysql.sock
user = root
password = mysql
mysqld
basedir = /usr/local/mysql
datadir = /data/mysql/3306/data
user = mysql
port = 3306
socket = /data/mysql/3306/data/mysql.sock
log_error = /data/mysql/3306/data/mysqld.err
log_timestamps = system
4.创建数据目录,并修改其属主、属组
mkdir -p /data/mysql/3306/data
mkdir -p /data/mysql/3306/binlog
mkdir -p /data/mysql/3306/log
chown mysql:mysql /data/mysql/3306/data/
chown mysql:mysql /data/mysql/3306/binlog/
chown mysql:mysql /data/mysql/3306/log/
5.初始化实例
配置yum源:
yum install -y libaio
yum install ncurses-libs
初始化数据库
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize
6.启动实例
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
可选:
cd /usr/local/mysql
cp support-files/mysql.server /etc/init.d/mysql.server
7.修改环境变量
cd /root
vi .bash_profile
PATH=$PATH:/usr/local/mysql/bin
source .bash_profile
显示默认密码:
grep password /data/mysql/3306/data/mysqld.err
将上个指令显示的密码填入这个命令的对话框中:
mysql -uroot -p
alter user user() identified by 'mysql_';
create user 'root'@'%' identified by 'mysql_';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql';
grant all on *.* to 'root'@'%';
附:参看参数文件位置
select * from performance_schema.variables_info where variable_name='max_connections'\G
--
主从数据库:
1.编辑配置文件
主
#GTID:
log-bin = mysql-bin
server-id = 1
gtid_mode =on
enforce_gtid_consistency = on
log-slave-updates = 1
binlog_format = row
skip_slave_start = 1
从
#GTID:
server-id = 2
gtid_mode = on
enforce_gtid_consistency = on
log-slave-updates = 1
binlog_format = row
skip_slave_start = 1
2.(主)在主库上创建复制用户
CREATE USER 'repl'@'192.168.10.155' IDENTIFIED by 'repl4321';
grant replication slave on *.* to 'repl'@'192.168.10.155';
ALTER USER 'repl'@'192.168.10.155' IDENTIFIED WITH 'mysql_native_password' BY 'repl4321';
3.(从)创建/backup目录
mkdir /backup
4(主)获取主库的备份
mysqldump -uroot -p --single-transaction --source-data=2 -E -R --triggers -A > full_backup.sql
scp full_backup.sql 192.168.10.155:/backup
5(从)基于主库的备份恢复从库
mysql -uroot -p < /backup/full_backup.sql
6.(从)从库上建立主从复制
CHANGE MASTER TO master_host='192.168.10.170',master_port=3306,master_user='repl',master_password='repl4321',MASTER_AUTO_POSITION = 1;
7.(从)开启主从复制
start slave;
主:192.168.10.170
从:192.168.10.155
注意:
--查看状态
show slave status \G
--启动服务
/etc/init.d/mysql.server start
--关闭防火墙或打开端口号
systemctl status firewalld
开启服务:
cp /etc/init.d/mysql.server /lib/systemd/system/
systemctl daemon-reload
systemctl status mysql