MySQL5.7 Linux下单机部署

1.云硬盘挂载

# 查看挂盘名称
fdisk -l

# 创建物理卷
pvcreate /dev/vdb

# 创建卷组
vgcreate data_vg /dev/vdb

# 创建逻辑卷
lvcreate -l +100%free -n data data_vg

# 格式化磁盘
mkfs.xfs /dev/data_vg/data

# 创建挂载目录
mkdir -p /data1

# 挂载
mount /dev/data_vg/data /data1

# 添加挂载信息
echo "/dev/mapper/data_vg-data /data1 xfs     defaults        0 0" >> /etc/fstab

2.系统配置

# 关闭防火墙
systemctl stop firewalld

# 设置防火墙开机不启动
systemctl disable firewalld

# 配置SELINUX
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

# 重启
reboot

# 卸掉自带的mariadb
yum -y remove mariadb*

3.MySQL安装

# 安装MySQL
rpm -Uvh Percona-Server-client-57-5.7.34-37.1.el7.x86_64.rpm \
         Percona-Server-server-57-5.7.34-37.1.el7.x86_64.rpm \
         Percona-Server-shared-57-5.7.34-37.1.el7.x86_64.rpm \
         Percona-Server-shared-compat-57-5.7.34-37.1.el7.x86_64.rpm


# 创建数据目录
mkdir -p /data1/mysql/{data,log,binlog,iblog}
mkdir -p /data1/mysql/relay/relaylog

# 修改拥有者
chown -R mysql:mysql /data1/mysql

# 修改配置文件
cp /etc/my.cnf /etc/my.cnf-20210405
vi /etc/my.cnf

[mysqld]
user=mysql
port=3306

#每个节点的server-id不相同,master为1,slave为2...
server-id=1

#directory
ignore-db-dir=lost+found
datadir=/data1/mysql/data
socket=/data1/mysql/mysql.sock
pid_file=/data1/mysql/mysqld.pid
#global
bind_address = 0.0.0.0
lower_case_table_names=1
#validate_password_policy=0
default_storage_engine=InnoDB
character_set_server=utf8mb4
collation_server=utf8mb4_general_ci
open_files_limit=20000
connect_timeout=15
query_cache_size = 0
query_cache_type = 0
back_log=2000
connect_timeout=15
skip_name_resolve=ON
max_connections=1000
max_user_connections=800
table_definition_cache=4096
table_open_cache=4096
sql_mode=ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_TRANS_TABLES
explicit_defaults_for_timestamp = ON
log_output=file
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#client buffer
read_rnd_buffer_size = 2M
sort_buffer_size = 2M
tmp_table_size = 64M
join_buffer_size = 2M
max_allowed_packet=536870912  #512m
group_concat_max_len=10240000

#mysql log
log_error=/data1/mysql/log/mysql-error.log
log_timestamps=SYSTEM
default_time_zone='+08:00'

#innodb
innodb_buffer_pool_size=6g
innodb_open_files=4096
innodb_sort_buffer_size=2M
innodb_log_buffer_size=67108864  #64m
innodb_log_file_size= 268435456  #256m
innodb_log_files_in_group=4
innodb_locks_unsafe_for_binlog=1
innodb_log_group_home_dir=/data1/mysql/iblog
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit  = 0
innodb_flush_method             = O_DIRECT
innodb_file_per_table           = 1
innodb_autoinc_lock_mode=2
innodb_temp_data_file_path=ibtmp1:12M:autoextend:max:5G

#innodb_force_recovery=1

#binlog
log_bin=/data1/mysql/binlog/mysql_bin
log_slave_updates=ON
binlog_cache_size=4M
max_binlog_cache_size=268435456 #256m
expire_logs_days=2
max_binlog_size=268435456 #256m
binlog_format=ROW
sync_binlog=500
enforce_gtid_consistency=1
gtid_mode=on
log_bin_trust_function_creators=ON



#semi_sync after install semi_sync plugin turn on
#rpl_semi_sync_master_enabled=ON
#rpl_semi_sync_slave_enabled=ON


#slow log
slow_query_log=ON
slow_query_log_file=/data1/mysql/log/slow-sql.log
log_queries_not_using_indexes=0
log_slow_admin_statements=1
long_query_time=1
#only percona
log_slow_rate_limit=100
log_slow_rate_type=query
log_slow_verbosity=full
log_slow_admin_statements=ON
log_slow_slave_statements=ON
slow_query_log_always_write_time=2
slow_query_log_use_global_control=all

#monitor
innodb_monitor_enable=all
performance_schema=ON

[client]
port=3306
socket=/data1/mysql/mysql.sock

[mysql_safe]
socket=/data1/mysql/mysql.sock
pid_file=/data1/mysql/mysqld.pid


# 启动MySQL
systemctl start mysqld

# 查看密码
grep -rn "temporary" /data1/mysql/log

# 登陆MySQL,修改密码
mysql -uroot -p
mysql> SET PASSWORD = PASSWORD('Duzi@1023');
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Duzi@1023' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

# 创建函数
mysql> CREATE FUNCTION fnv1a_64 RETURNS INTEGER SONAME 'libfnv1a_udf.so';
mysql> CREATE FUNCTION fnv_64 RETURNS INTEGER SONAME 'libfnv_udf.so';
mysql> CREATE FUNCTION murmur_hash RETURNS INTEGER SONAME 'libmurmur_udf.so';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值