Linx--MySQL--安装笔记详细步骤!

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

相关推荐
for_ever_love__16 小时前
MySQL 8.0 数据类型选型指南:INT、DECIMAL、VARCHAR 与时间字段怎么选
mysql·adb·数据类型·varchar·长度·字段类型选择
yeflx2 天前
Ubuntu22.04安装Mysql Workbench
数据库·mysql·adb
夜雪一千2 天前
MySQL 自增 ID 的底层原理与坑点
android·mysql·adb
Dxy12393102163 天前
MySQL JSON 生成列索引原理、实战与坑点
mysql·adb·json
远方 hi3 天前
MySQL 管理
adb
夜雪一千4 天前
MySQL 删除 JSON 类型的数据实战
mysql·adb·json
千码君20165 天前
个人开发者:安卓手机adb调试
android·adb·智能手机
夜雪一千6 天前
MySQL 如何存储经纬度坐标:选型、建表、空间查询实战
android·mysql·adb
有毒的教程6 天前
Dev-C++ 使用扩展库两种方式:DevPak一键安装 / 手动配置(重点)
android·c++·adb