文档章节

CentOs7 急速安装 MySQL

gaob2001
 gaob2001
发布于 2017/08/21 16:42
字数 802
阅读 35
收藏 1

CentOs7 急速安装 MySQL,献给还在为装机浪费生命的同学。

准备工作:

Centos7 最小化安装(或者更高)

Oracle 官网下载 MySQL 安装包 (https://dev.mysql.com/downloads/mysql/)

这里演示安装 5.6 版本, 下载的包为 MySQL-5.6.37-1.el7.x86_64.rpm-bundle.tar

开始:

把文件上传到服务器,我这是上传到 /root/ 路径,mysql 版本为 5.6.37

[root@localhost ~]# ll
total 237944
-rw-------. 1 root root      1320 Aug 14 13:48 anaconda-ks.cfg
-rwxr-xr-x. 1 root root 243650560 Aug 14 14:28 MySQL-5.6.37-1.el7.x86_64.rpm-bundle.tar
[root@localhost ~]# 

登陆到服务器新建一个脚本文件

vi mysql_secure_installation.exp

将以下内容复制到脚本文件, 输入 :wq 退出

#!/usr/bin/expect

set pwd [lindex $argv 0]

spawn /usr/bin/mysql_secure_installation

expect {
  "none\):" { send "$pwd\r" }
}
expect {
  "*Y/n*" { send "y\r" }
}
expect {
  "password:" { send "123456\r" }
}
expect {
  "password:" { send "123456\r" }
}
expect {
  "*Y/n*" { send "y\r" }
}
expect {
  "*Y/n*" { send "n\r" }
}
expect {
  "*Y/n*" { send "y\r" }
}
expect {
  "*Y/n*" { send "y\r" }
}
expect {
  "*Y/n*" { send "y\r" }
}

这里设置 mysql 的默认密码为 123456, 也可以改为其他的。

接下来执行安装

export MYSQL_VERSION=5.6.37-1.el7.x86_64 && \
yum install -y expect && \
yum install -y libaio.x86_64 && \
yum install -y perl perl-devel perl-Data-Dumper && \
rpm -qa|grep -i mysql|xargs rpm -e --nodeps|date && \
rpm -qa|grep -i mariadb|xargs rpm -e --nodeps|date && \
rm -rf /etc/my.cnf && \
rm -rf /usr/my.cnf && \
rm -rf /var/log/mysql && \
tar -xvf MySQL-$MYSQL_VERSION.rpm-bundle.tar && \
rpm -ivh MySQL-server-$MYSQL_VERSION.rpm && \
rpm -ivh MySQL-devel-$MYSQL_VERSION.rpm && \
rpm -ivh MySQL-client-$MYSQL_VERSION.rpm && \
mysql_install_db --user=mysql && \
service mysql start && \
expect mysql_secure_installation.exp `cat /root/.mysql_secret | awk -F '):' '{print $2}'|sed s/[[:space:]]//g` && \
cp /usr/share/mysql/my-default.cnf /etc/my.cnf && \
echo 'port=3306' >> /etc/my.cnf && \
echo 'max_allowed_packet=1G' >> /etc/my.cnf && \
echo 'default-storage-engine=innodb' >> /etc/my.cnf && \
echo 'character_set_server=utf8' >> /etc/my.cnf && \
echo 'innodb_strict_mode=0' >> /etc/my.cnf && \
echo 'lower_case_table_names=1' >> /etc/my.cnf && \
service mysql restart && \
mysql -uroot -p123456 -e "grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;";

第一行 MYSQL_VERSION 改为当前 mysql 的版本。

在命令行输入 mysql --version

[root@localhost ~]# mysql --version
mysql  Ver 14.14 Distrib 5.6.37, for Linux (x86_64) using  EditLine wrapper

这里为了方便演示远程连接先将防火墙关闭

systemctl stop firewalld && setenforce 0;

查看 ip

[root@localhost ~]# ifconfig 
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.33  netmask 255.255.254.0  broadcast 192.168.1.255
        inet6 fe80::386e:65ac:d4eb:679  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:8a:99:82  txqueuelen 1000  (Ethernet)
        RX packets 376181  bytes 494309622 (471.4 MiB)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 60061  bytes 5188268 (4.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
...

使用 mysql 客户端远程连接数据库, 默认密码为 123456

bingaos-MacBook-Pro:Downloads bingao$ mysql -h192.168.0.33 -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.37 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

连接成功。

 

解释以下做了什么事情:

使用yum安装了 expect libaio.x86_64 perl perl-devel perl-Data-Dumper

检查系统是否有安装过 mysql 如果有就删除

删除系统自带的 mariadb

删除 /etc/my.cnf /usr/my.cnf 配置文件

删除 默认数据 /var/log/mysql

rpm 安装 MySQL-server-5.6.37-1.el7.x86_64.rpm

rpm 安装 MySQL-devel-5.6.37-1.el7.x86_64.rpm

rpm 安装 MySQL-client-5.6.37-1.el7.x86_64.rpm

使用 mysql_install_db --user=mysql 命令初始化数据库

使用 /usr/bin/mysql_secure_installation 初始化数据库配置

新建了 /etc/my.cnf, 增加了几个参数 (这里可以根据个人需要修改)

max_allowed_packet=1G

default-storage-engine=innodb 

character_set_server=utf8 

innodb_strict_mode=0 

lower_case_table_names=1

授权远程连接

© 著作权归作者所有

gaob2001

gaob2001

粉丝 5
博文 72
码字总数 55339
作品 0
黄浦
程序员
私信 提问
加载中

评论(2)

万事通
万事通
路过看过点赞过
CentOs7 急速安装 JDK

CentOs7 急速安装 JDK, 献给还在为装机浪费生命的同学。 准备工作: Centos7 最小化安装(或者更高) Oracle官网下载 jdk 包。(http://www.oracle.com/technetwork/java/javase/downloads/jd...

gaob2001
2017/08/21
19
0
centos7 安装MySQL报错No package mysql-server available

在CentOS7上安装mysql时,如果出现了以下截图的提示: 排错方案有三种:(当前截图属于第三种由于系统原因) 1、没有在线源或者未连接外网2、本地光盘未挂载或者光盘内置包不全3、系统升级是...

留言非雨
2018/01/03
0
0
MongoDB 3.4.2 SQL 查询语句详解

本文对 MongoDB 的一些基本操作做一下整理和总结。 首先会介绍一下基于命令行的sql操作,其次结合 spring 的 mongoTemplate 介绍一下如何通过 java 操作数据库。对 NoSQL 不熟悉的同学可以了...

gaob2001
2018/05/24
203
0
MySQL之安装美团点评的SQLAdvisor

注意:是在Centos7上安装SQLAdvisor,必须是在没有安装MySQL的Centos7上安装,因为如果事先安装了MySQL,那么安装SQLAdvisor时,MySQL的/etc/my.cnf会与SQLAdvisor的依赖发生冲突。 在没有安...

汉斯-冯-拉特
2018/07/17
234
0
yum安装最新的mysql

通常在使用Yum安装MySQL时,centos6默认安装的是伴随OS发布的旧MySQL版本,centos7安装的MariaDB。之前要安装最新的MySQL版本,你必须去Oracle的MySQL主页,下载最新的发布版本,然后编译安装...

hiwill
2015/09/09
511
0

没有更多内容

加载失败,请刷新页面

加载更多

Docker 可视化管理 portainer

官网安装指南: https://portainer.readthedocs.io/en/latest/deployment.html docker-compose.yml 位置,下载地址:https://downloads.portainer.io/docker-compose.yml...

Moks角木
35分钟前
3
0
Spring Security 实战干货:必须掌握的一些内置 Filter

1. 前言 上一文我们使用 Spring Security 实现了各种登录聚合的场面。其中我们是通过在 UsernamePasswordAuthenticationFilter 之前一个自定义的过滤器实现的。我怎么知道自定义过滤器要加在...

码农小胖哥
38分钟前
6
0
常见分布式事务解决方案

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源...

asdf08442a
39分钟前
3
0
influxdb continuous queries(cq)从入门到放弃

从前一篇influxdb的文章prometheus基于influxdb的监控数据持久化存储方案完成之后,就一直在折腾influxdb发布测试和生产环境的问题,经过接近2个月的验证,最终发现使用influxdb自带cq的方案...

狗陈
50分钟前
7
0
7.线程通信

在现实生活中,如果一个人团队正在共同完成任务,那么他们之间应该有通信,以便正确完成任务。 同样的比喻也适用于线程。 在编程中,要减少处理器的理想时间,我们创建了多个线程,并为每个线...

Eappo_Geng
56分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部