OS: Centos7.0
DB: Percona5.7

1. 通过yum安装

## 删除之前的mysql数据库, 我用的是centos7.再安装虚拟机的时候,预装了很多软件。所以mysql和mariadb的一些东西安装了。必须要删除掉
rpm -qa | grep mysql
rpm -qa | grep mariadb rpm -e mysql
rpm -e --nodeps mysql
yum remove mariadb-libs-5.5.41-2.el7_0.x86_64 ## 安装其他依赖包:perl 和libaio
yum -y install perl-Module-Install.noarch
yum -y install libaio libaio-devel ## 配置yum安装源
yum install https://www.percona.com/redir/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm ## 最新的是0.1-4 ## 安装percona
yum install Percona-Server-server-57

2. 通过rpm安装

wget https://www.percona.com/downloads/Percona-Server-LATEST/Percona-Server-5.7.18-16/binary/redhat/7/x86_64/Percona-Server-5.7.18-16-rd7301f8-el7-x86_64-bundle.tar

tar xvf Percona-Server-5.7.18-16-rd7301f8-el7-x86_64-bundle.tar

rpm -ivh Percona-Server-shared-compat-57-5.7.18-16.1.el7.x86_64
rpm -ivh Percona-Server-shared-57-5.7.18-16.1.el7.x86_64
rpm -ivh Percona-Server-client-57-5.7.18-16.1.el7.x86_64
rpm -ivh Percona-Server-server-57-5.7.18-16.1.el7.x86_64

3. 配置

## 配置用户组
groupadd mysql
useradd -r -g mysql mysql mysqld --initialize --user=mysql --datadir=/user/local/webserver/mysql ## 如果没报错,恭喜你很幸运

vim /etc/percona-server.conf.d/mysqld.cnf

[mysqld]

datadir=/usr/local/webserver/mysql
socket=/usr/local/webserver/mysql/mysql.sock # initialize need
explicit_defaults_for_timestamp=true # Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0 log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid [mysql]
socket=/usr/local/webserver/mysql/mysql.sock

chown -R mysql:mysql /usr/local/webserver/mysql

service mysqld start ## 如果没报错,恭喜你很幸运。

4. 登录

cat /var/log/mysqld.log | grep "temporary password" ## 找到root的初始密码。

mysql -u root -p 

set password = password('root');

5. ERROR

  • mysqld --initialize 报错:TIMESTAMP with implicit DEFAULT value is deprecated

    从 5.6开始,timestamp 的默认行为已经是 deprecated

vim /etc/percona-server.conf.d/mysqld.cnf

explicit_defaults_for_timestamp=true ## 加上这段(显示指定默认值为timestamp类型的字段)
  • mysql --initialize 报错:initialize specified but the data directory has files in it. Aborting.

    datadir 已经存在了。删除即可

  • service mysqld start 报错:InnoDB: .\ibdata1 must be writable > InnoDB 在启动时需要配置LOG File的目录,如果没有制定目录,则会在MySQL Data目录下创建2个日志文件ib_logfile0 and ib_logfile1,在创建的时候需要确保MYSQL拥有对该目录的权限。

ps -ef | grep mysqld
kill 21222 ## kill掉mysqld的进程
rm /usr/local/webserver/mysql/ib_logfil*
service mysqld start
  • service mysqld start 报错:Could not create unix socket lock file /user/lib/mysql/mysql.sock.lock.
## 很简单的问题。加权限即可
chown -R mysql:mysql /user/lib/mysql/

6. 总结

安装mysql的数据库必要步骤有:

  1. 安装依赖包
  2. 安装mysql数据库
  3. 初始化服务(mysqld --initialize)
  4. 修改配置文件,配置datadir目录权限和用户
  5. 启动服务,链接数据库

参考资料

  1. MySQL 5.6 中TIMESTAMP with implicit DEFAULT value is deprecated错误
  2. MYSQL 服务无法启动,错误日志:InnoDB: .\ibdata1 must be writable
  3. 如何在 CentOS 7 上安装 Percona服务器
  4. percona5.7 源码安装

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

 
 
 
 

Centos7安装Percona5.7的更多相关文章

  1. HP服务器 hp 360g5 centos7安装问题

    HP服务器  hp 360g5 centos7安装问题 一 :启动盘无法识别硬盘 1.进入安装光盘,用上下键选择安装centos--Install Centos7(注意不可按Enter键),如图: 2 ...

  2. CentOS7 安装Mono及Jexus

    CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...

  3. CentOS7安装mysql提示“No package mysql-server available.”

    针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...

  4. CentOS7安装Oracle 11gR2 安装

    概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...

  5. Centos7安装完毕后重启提示Initial setup of CentOS Linux 7 (core)的解决方法

    问题: CentOS7安装完毕,重新开机启动后显示: Initial setup of CentOS Linux 7 (core) 1) [x] Creat user 2) [!] License i ...

  6. centos7安装eclipse

    centos7安装eclipse Eclipse是一个集成开发环境(IDE),包含一个基工作区和定制环境的可扩展插件系统.大部分使用 Java 编写,Eclipse 可以用来开发应用程序.通过各种插件 ...

  7. CentOS7安装mongoDB数据库

    CentOS7安装mongoDB数据库 时间:2015-03-03 16:45来源:blog.csdn.net 作者:进击的木偶 举报 点击:8795次 mongoDB是目前发展比较好的NOSQL数据 ...

  8. CentOS7安装Ambari

    环境: CentOS7安装两个节点:master.slave1.并配置ssh无密码登录. 步骤: 获取 Ambari 的公共库文件(public repository): wget http://pu ...

  9. [CentOs7]安装mysql(2)

    摘要 之前安装过一次mysql,最后配置,发现在本地无法连接,重启服务的时候一直卡在那里不动,感觉是安装的过程出问题,最后没办法还是卸载了,然后重新安装一下. [CentOs7]安装mysql Mys ...

随机推荐

  1. chrome保持元素hover,active状态

    审查元素,选中需要hover的标签 点击"Styles"菜单中的":hov",弹出 Force element state 选中相应的 :hover :acti ...

  2. jQuery高级Ajax

    .load();加载远程的HTML文件代码,并插入到指定的DOM节点中.可以只传入一个参数,表示加载一个静态的HTML代码片段. $("#div1").load("loa ...

  3. 团队作业4--第一次项目冲刺(Alpha版本) 4

    一.Daily Scrum Meeting照片 二.燃尽图 三.项目进展 完成对查重结果的写出与保存,将查重结果写出并导出保存为Excel形式 四.困难与问题 对查重结果的保存,当有多份文档进行比较的 ...

  4. 201521123029《Java程序设计》第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 1.finally 题目4-2 1.1 截图你的提交结果(出 ...

  5. linux 下怎样查找一个文件夹在哪个目录下?

    如果只显示所在目录的路径: find 目录 -type d -name "查询目录名" -printf "%h\n" 如果同时显示目录名称和所在目录的路径: f ...

  6. Spring - bean的lazy-init属性(懒加载)

    默认情况下,容器初始化的时候便会把bean实例化,通常这样做可以让一些配置或者bean实例化的异常在容器启动的时候就发现,而不是在N久之后.但有时候,我们希望某个可能不会用到但又不是100%不用的be ...

  7. 【机器学习实战】Machine Learning in Action 代码 视频 项目案例

    MachineLearning 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远 Machine Learning in Action (机器学习实战) | ApacheCN(apa ...

  8. Socket类 以及 ServerSocket类 讲解

    Socket类 套接字是网络连接的端点,套接字使应用可以从网络中读取数据,可以向网络中写入数据.不同计算机上的两个应用程序可以通过连接发送或接收字节流,以此达到相互通信的目的. 为了从一个应用程序向另 ...

  9. vue+element搭建的后台管理系统

    最近工作不是很忙,自己在学习vue,在网上找了一个简单的项目练练手..... 这是本人的gitHub 上的项目地址:https://github.com/shixiaoyanyan/vue-admin ...

  10. 【设计模式】module(模块)模式

    写在前面 最近刚接触到设计模式, <head first设计模式>里有一篇文章,是说使用模式的心智, 1.初学者"心智" :"我要为HELLO WORLD找个 ...