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. 机器视觉学习笔记(5)——基于OpenCV的单目摄像机标定

    本文CameraCalibrator类源代码来自于OpenCV2 计算机视觉编程手册(Robert Laganiere 著 张静 译) 强烈建议阅读机器视觉学习笔记(4)--单目摄像机标定参数说明之后 ...

  2. tomcat注册成windows系统服务

    一.下载Tomcat Tomcat可以从http://tomcat.apache.org/网站下载,选择任意版本,在 Binary Distributions 下的zip包既是. 二.配置Tomcat ...

  3. Linux日志文件查看和搜查命令(错误日志排查定位)

    一.cat命令 cat 命令用于连接文件并打印到标准输出设备上,主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能. 语法格式 cat [-AbeEnstTuv] fileName 参数说明 ...

  4. SerialPort缓冲区

    SerialPort缓冲区中有:接收缓冲区,发送缓冲区,输入缓冲区,输出缓冲区,传输缓冲区. 例如: 串口属性:BytesToRead(获取接收缓冲区中数据的字节数)--这里提到的是“接收缓冲区” 串 ...

  5. C#中用SerialPort类中的Write()方法发送十六进制数

    在C#中用SerialPort类中的Write()方法向串口发送十六进制数的方法: MSDN对SerialPort::Write()是这样解释的: 将数据写入串行端口输出缓冲区. 重载列表   名称 ...

  6. MySQL 示例数据库sakila-db的安装

    最近在看 “高性能MySql”这本神书,发现上面很多例子采用的官方示例数据库sakila. 官方示例数据库 下载地址 http://dev.mysql.com/doc/index-other.html ...

  7. 【知识碎片】JavaScript篇

     40.选择器组合 逗号是多选择器空格 是子子孙孙尖括号 只找儿子 39.失去焦点事件blur $("input").blur(function(){ $("input& ...

  8. Spring总结八:jdbcTemplate的简单使用

    简介: Srping毕竟是一站式框架,所以也有操作数据库的东西,那就是jdbcTemplate,介绍一下jdbcTemplate的简单使用. 除了要引入必要的包以外,还需要引入 spring-jdbc ...

  9. codeforces:Helga Hufflepuff's Cup

    题目大意:有一个包含n个顶点的无向无环连通图G,图中每个顶点都允许有一个值type,type的范围是1~m.有一个特殊值k,若一个顶点被赋值为k,则所有与之相邻的顶点只能被赋小于k的值.最多有x个顶点 ...

  10. dubbo 相关面试题 有用

    调用关系说明: · 0. 服务容器负责启动,加载,运行服务提供者. · 1. 服务提供者在启动时,向注册中心注册自己提供的服务. · 2. 服务消费者在启动时,向注册中心订阅自己所需的服务. · 3. ...