1、建立用户和组

sudo groupadd mysql
sudo useradd -g mysql -s /sbin/nologin mysql

2、下载二进制包Percona-Server-5.7.25-28-Linux.x86_64.ssl101.tar.gz。解压,并移至安装目录

tar -zxvf Percona-Server-5.7.25-28-Linux.x86_64.ssl101.tar.gz
sudo mv Percona-Server-5.7.25-28-Linux.x86_64.ssl101 /usr/local/mysql

3、卸载本机自带的数据库

sudo yum remove mariadb-libs

4、编辑配置文件

sudo vim /etc/my.cnf


[mysqld]
default_time_zone = "+8:00"
skip-name-resolve
basedir=/usr/local/mysql
datadir=/data/mysql_data
socket=/data/mysql_log/mysql.sock
server-id=216130
event_scheduler=1
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
master_info_repository = TABLE
relay_log_info_repository = TABLE
gtid_mode = on
enforce_gtid_consistency = 1


##############################################################################################################
#LOGS CONFIG
##############################################################################################################
log_timestamps = SYSTEM
slow_query_log
long_query_time = 2
slow_query_log_file=/data/mysql_log/slow.log
binlog_format=ROW
log_bin=mysql-binlog
log_slave_updates
sync_binlog = 1
expire_logs_days=3
log-bin = /data/mysql_log/mybinlog
log-error = /data/mysql_log/error.log
innodb_max_undo_log_size = 512M
innodb_undo_directory = /data/mysql_log/undolog
innodb_undo_tablespaces = 95
innodb_undo_logs = 128


##############################################################################################################
#CONNECTION && SESSION CONFIG
##############################################################################################################
max_connections = 512
back_log = 500
max_connect_errors = 100
interactive_timeout=1000
connect_timeout=1000
wait_timeout=100
character_set_server=utf8mb4
thread_stack = 192K
thread_cache_size=64


##############################################################################################################
#TABLE && QUERY CONFIG
##############################################################################################################
table_open_cache = 40960
max_allowed_packet = 32M
max_heap_table_size = 64M
sort_buffer_size = 8M
join_buffer_size = 8M
query_cache_type = 0
query_cache_size = 0
query_cache_limit = 2M
ft_min_word_len = 2
default-storage-engine = innodb
transaction_isolation = REPEATABLE-READ
tmp_table_size = 32M
innodb_open_files=40960
open_files_limit=82930


##############################################################################################################
#MYISAM CONFIG
##############################################################################################################
key_buffer_size = 32M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 500M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 512M
myisam_repair_threads = 2
explicit_defaults_for_timestamp


##############################################################################################################
#INNODB CONFIG
##############################################################################################################
innodb_buffer_pool_size = 512M  # 重要参数,物理内存的75%左右
innodb_buffer_pool_instances=4
innodb_page_cleaners=4
innodb_purge_threads = 4
innodb_data_file_path = ibdata1:256M:autoextend
innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_thread_concurrency = 0
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 8M
innodb_log_files_in_group=5
innodb_log_file_size=500m
innodb_flush_method = O_DSYNC
innodb_lock_wait_timeout = 120
innodb_file_per_table=1
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
internal_tmp_disk_storage_engine = InnoDB
innodb_rollback_on_timeout = 1


#############################################################################################################
#REPLICATION CONFIG
##############################################################################################################
replicate-wild-ignore-table=mysql.%
replicate-wild-ignore-table=information_schema.%
replicate-wild-ignore-table=performance_schema.%
replicate-wild-ignore-table=dbcfg.%
replicate-wild-ignore-table=test.%
skip-slave-start


[mysqld_safe]
log-error=/data/mysql_log/error.log
pid-file=/data/mysql_log/mysqld.pid


[client]
socket = /data/mysql_log/mysql.sock


[mysql]
prompt="\u@db01 [\d]> "

 

5、创建相应文件夹,并赋权限

sudo mkdir -p /data/{mysql_log,mysql_data}
sudo chown mysql. -R /data
sudo chown mysql. -R /usr/local/mysql/

6、初始化

cd /usr/local/mysql/bin
sudo ./mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql

其中初始化密码打印屏幕中

--17T02::.361433Z  [Note] A temporary password is generated for root@localhost: pp!NIfqgG1ZO

7、配置环境变量

sudo vim /etc/bashrc

添加

export PATH=$PATH:/usr/local/mysql/bin

生效

source /etc/bashrc

8、配置服务

sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

更改其中的

sudo vim /etc/init.d/mysqld
=======
basedir=/usr/local/mysql
datadir=/data/mysql_data

9、启动服务,加入自启

sudo service mysqld start
sudo chkconfig --add mysqld

10、发现连接报错

mysql -uroot -p -S /data/mysql_log/mysql.sock
Enter password:
ERROR (HY000): Can't connect to local MySQL server through socket '/data/mysql_log/mysql.sock' (13)

原因是/data/mysql,我的用户无法连接到该目录中。所以需要赋权

sudo chmod  /data/mysql_log/

ok,问题解决

11、

/usr/local/mysql/bin/mysql --socket=/data/mysql_log/mysql.sock -uroot -p

输入密码,更改初始密码

alter user root@localhost identified by '';

创建一个主从复制账户

create user 'DB101'@'192.168.20.101' identified by '';
grant REPLICATION SLAVE on *.* to 'DB101'@'192.168.20.101';

12、在192.168.20.101中操作,发现无法连接。

mysql -h192.168.20.100 -uDB101 -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.20.100' (113)

使用telnet,发现3306端口无法通信。所以需要更改防火墙策略

sudo firewall-cmd --zone=public --add-port=/tcp --permanent
sudo firewall-cmd --reload

问题解决

安装遇到问题:

 1、初始化时候报错

sudo ./mysqld --initialize --user=mysql
./mysqld: error while loading shared libraries: libaio.so.: cannot open shared object file: No such file or directory

解决办法

sudo yum localinstall ~/libaio-0.3.-.el7.x86_64.rpm

我这边是无网络环境,所以先从其他地方下载安装包,本地进行安装

2、percona提供的安装文件,密码是不会打印在屏幕中的,需要自己查找。路径是数据目录的err.log

cat /data/mysql_log/error.log

percona 5.7二进制安装的更多相关文章

  1. mysql二进制安装,升级,多实例部署

    目标 理解线上部署考虑的因素 学会编译安装以及二进制安装mysql 学会升级mysql 学会多实例部署mysql数据库 学会合理部署mysql线上库   考虑因素: 版本选择,5.1,5.5还是5.6 ...

  2. ubuntu14.04下简易二进制安装mysql

    下载mysql-commnunity的5.6.24通用二进制版 tar解压 我安装到/opt目录,所以mv到/opt/ 可选,建了个软链 ln -s *** mysql 添加运行mysql服务的用户和 ...

  3. mysql5.6 通用二进制安装

    mysql5.6 通用二进制安装: #卸载原有的mysqlyum remove mysql*ls /etc/my.cnf*mv /etc/my.cnf* /tmp/ #安装依赖包yum install ...

  4. CentOS 6.2 二进制安装apache2.4.3出现configure: error: APR-util not found. Please read the documentation的解决方

    CentOS 6.2 二进制安装apache2.4.3出现configure: error: APR-util not found. Please read the documentation的解决方 ...

  5. CentOS6+MySQL5.6二进制安装

    一般我们安装mysql采用二进制安装的方式就足以满足我们的生产环境了,不过需要我们配置my.cnf文件 从官网下载二进制MySQL,选择Linux-Generic,最后这两个是二进制包 http:// ...

  6. Mysql的二进制安装和基础入门操作

    前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...

  7. centos 7.3二进制安装mariadb10.2.8完美步骤

    (1)在centos7系统上,yum info mariadb可以找到提供mariadb包的官方网站,在到官方网站下载最新的mariadb包,然后rz到linux系统上去 (2)准备用户 1.user ...

  8. Linux中MySQL5.6编译安装与MySQL5.7二进制安装步骤

    首先,介绍一下MySQL的几种安装方式 1.RPM.Yum 的安装方式:安装方便.安装速度快,无法定制 2.二进制:不需要安装,解压即可使用,不能定制功能 3.编译安装:可定制,安装慢. 编译安装中需 ...

  9. Centos7 二进制安装 Kubernetes 1.13

    目录 1.目录 1.1.什么是 Kubernetes? 1.2.Kubernetes 有哪些优势? 2.环境准备 2.1.网络配置 2.2.更改 HOSTNAME 2.3.配置ssh免密码登录登录 2 ...

随机推荐

  1. PHP函数(四)-变量函数

    变量函数 将声明的函数的函数名赋给一个变量,通过该变量来调用函数 <?php function Calculate($a,$b){ return $a + $b; } echo "计算 ...

  2. Shell编程的基本语法

    Shell编程 创建sh文件 touch test.sh vim test.sh 写入如下内容 #!/bin/bash a="hello" 运行 chmod +x /root/te ...

  3. java成神之——jaxb操作xml的基本使用

    JAXB 依赖 读取xml配置 写配置 自定义写配置 结语 JAXB 依赖 <dependency> <groupId>javax.activation</groupId ...

  4. springboot成神之——websocket发送和请求消息

    本文介绍如何使用websocket发送和请求消息 项目目录 依赖 DemoApplication MessageModel WebConfig WebSocketConfig HttpHandshak ...

  5. SqlServer——临时表

    1.表的类型: SqlServer数据库中分为两个表:永久表.临时表:通过表名的前缀区分. 永久表:与物理文件.C# 中的静态类 类似,任何用户均可对其执行操作并且相互影响: 临时表:简单的说就是使用 ...

  6. PHP框架 Laravel

    PHP框架 CI(CodeIgniter) http://www.codeigniter.com/ http://codeigniter.org.cn/ Laravel PHP Laravel htt ...

  7. c# tcp udp 的使用场景

    之前用tcp实现了一个案例(远程协助),后来我考虑用udp去实现它,于是又研究了下udp,我发现理论上udp可以做到,但是有一些问题不知道会不会有瓶颈 我参照网上写了一个简单的示例如下 服务端接收.发 ...

  8. s3c6410存储器映射

    1.引导镜像区 0x0000_0000~0x07FF_FFFF 2.内部存储区 (1) 内部ROM 0x0800_0000~0x0BFF_FFFF (2) 内部SRAM 0x0C00_0000~0x0 ...

  9. Spark的几个问题

    1.application是由driver和executor组成的,executor可以分成task,task又可以分成为stage.当一个任务提交给spark之后,spark机群的主节点会出现dri ...

  10. resin的几个常用配置

    参考原文:http://blog.csdn.net/johnson1492/article/details/7913827 本文着重介绍resin的几个常用配置 注: 1. 本文并非resin.con ...