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. C# 获取天气 JSON解析

    说明: winform获取中国天气的数据 中国天气返回的是JSON数据格式,这里做简单的解析. 用的http://www.weather.com.cn/data/sk/.html获取的天气.    [ ...

  2. php使用substr中文乱码问题

    周天的时候对网站 https://www.javasec.cn 进行bug修复和功能更新,其中遇到一个比较有意思的小问题: 问题: 网站的置顶推荐中,有文本略缩.但是无论怎么修改最后一个字符始终现实为 ...

  3. Flask之邮件扩展

    4.4 Flask—Mail 在开发过程中,很多应用程序都需要通过邮件提醒用户,Flask的扩展包Flask-Mail通过包装了Python内置的smtplib包,可以用在Flask程序中发送邮件. ...

  4. 负载均衡LVS之DR(附:NFS共享存储) 五分钟搭建手册

    一:DR-模式 调度器Ip:192.168.1.254 服务器ip:192.168.1.1/192.168.1.2 VIP:192.168.1.10 ——配置负载均衡调度器: 关闭重定向响应配置: V ...

  5. java Integer类的缓存(转)

    首先看一段代码(使用JDK 5),如下: public class Hello { public static void main(String[] args) { int a = 1000, b = ...

  6. cuteFTP软件往linux中上传文件时报…

    我是在win7和VM中的ubuntu传输文件: 使用一个客户端,可以正常的连接,但是当上传文件时,总是报553 Could not create file错误信息. 主要原因是新建的文件夹没有更改权限 ...

  7. 初次用SqlServer查看本地的Excel文件时需要注意的地方

    日常用到通过SqlServer 读取Excel文件的案例 ,记录下来 文件路径 :C:\Users\Administrator\Desktop\icd10.xls 1.查询语句: SELECT  *F ...

  8. 调用DLL的2种方式

    [调用DLL的2种方式] DLL在生成的时候会有dll.lib2个文件,另外包含相应的.h. 1.静态方式,通过lib来引用dll,以及引入.h. 2.只通过dll来使用,前提是知道内部的函数符号.

  9. android 拍照+拍照button 以及返回按钮布局

    公司最近做一个项目拍照总是崩溃,所以决定自己写一个拍照的方法,在网上调研一番,写了一个简单demo,现共享如下 主要CameraActivity CameraActivity package com. ...

  10. 如何将Eclipse中的开源项目使用到Android Studio中

    近几日,笔者用到了一些开源项目,比如著名的PTR项目.但是在使用的过程中,遇到了一些问题. 这个开源库是在Eclipse上面写的,我们现在开发用的是Android stuido. 两种软件的项目结构是 ...