CentOS7 yum安装mysql8.0x

#修改为阿里源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

yum upgrade -y

#删除系统自带mariadb
rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
yum remove mariadb-libs  (#如删除失败可先更新系统后再执行)

#安装mysql8.0源
rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

#安装mysql公钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

#更新系统和源
yum clean all
yum makecache

#安装mysql8.0
yum install -y  mysql-community-server

#最后按需创建实例

备份原配置文件、创建慢日志、数据库目录

cp /etc/my.cnf /etc/my.cn.bak

编辑配置:vi /etc/my.cnf

[client]
port=3306
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8mb4

[mysqld]

log-bin=mysql-bin                               #开启主从binlog(二进制日志),主库必须开启
#binlog_format=mixed                            #指定二进制日志格式为mixed,即在语句和行两种模式之间自动切换
binlog-format=ROW                               #日志格式
#server-id=1                                     #这是我配置双活的参数,配置server-id(唯一)标识,必须与从库不一致
#relay-log=relay-bin                             #指定中继日志文件的名称为relay-bin,用于在主从复制中传输数据
#relay-log-index=slave-relay-bin.index           #指定中继日志索引文件的名称,用于记录中继日志文件的位置。
#auto_increment_increment=2                      #指定自增长ID的增量为2,用于在主从复制中避免ID冲突。
#auto_increment_offset=2                         #指定自增长ID的起始值为1,用于在主从复制中避免ID冲突。

[mysql]
default-character-set=utf8mb4
no-auto-rehash

[mysqld]
port=3306

max_connections=1000

datadir=/data/mysql    #根据自身情况修改
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'

#lower_case_table_names=1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

skip-external-locking
skip_name_resolve
max_connect_errors=10

slow_query_log=on
long_query_time=3
slow_query_log_file=/var/log/slowsql.log

key_buffer_size=128M
read_buffer_size=1M
read_rnd_buffer_size=2M
max_allowed_packet=1M
table_open_cache=64
sort_buffer_size=512K
net_buffer_length=8K

default_storage_engine=InnoDB
innodb_buffer_pool_size=1024M
innodb_flush_log_at_trx_commit=2
innodb_log_file_size=256M
innodb_log_buffer_size=8M
innodb_log_files_in_group=3
innodb_lock_wait_timeout=50

创建慢日志、数据目录

touch /var/log/slowsql.log

mkdir -p /data/mysql

变更权限

chown mysql:mysql /var/log/slowsql.log

chmod 664 /var/log/slowsql.log

chown -R mysql:mysql /var/lib/mysql

chmod -R 755 /var/lib/mysql

初始货数据库

 mysqld --user=mysql --initialize

获取初始密码

cat /var/log/mysqld.log | grep password

开启数据库,登陆并修改密码

systemctl start mysqld

systemct status mysqld        #检查服务状态

mysql -uroot -p

输入上面获取的初始密码

ALTER USER 'root'@localhost'' IDENTIFIED BY 'password';

创建远程创建用户admin,并授权所有数据库权限

ALTER USER 'admin'@'' IDENTIFIED WITH mysql_native_password BY 'password';

FLUSH PRIVILEGES;

退出 quit

添加防火墙端口3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent

systemctl restart firewalld

把数据库添加为开机启动

systemctl enable mysqld

关闭SElinux

vi /etc/selinux/config

修改 SELINUX=enforcing   =》 SELINUX=disabled

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值