特别注意: 文档中涉及到密码的都是用的是弱密码,是存在安全风险的,一定要根据自己的情况修改为复杂度更高的密码!

  • centos 7.6
  • mysql 5.7.31
  • 基础目录: /srv/{app,data,logs}/mysql

准备安装

下载并解压

yum install libaio -y
useradd -c 'MySQL Server' -d /var/lib/mysql -s /bin/false -r -M mysql
cd /srv/app
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
tar mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql
mkdir -p /srv/{data,logs}/mysql /var/run/mysql
chown -Rf mysql:mysql /srv/{app,data,logs}/mysql /var/run/mysql

进行安装

配置my.conf

[mysqld]
basedir=/srv/app/mysql
datadir=/srv/data/mysql
socket=/srv/data/mysql/mysql.sock
default_password_lifetime = 0
max_allowed_packet = 128M
max_connections = 5000
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
federated
skip-name-resolve
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
innodb_buffer_pool_size = 2G
innodb_log_buffer_size=16M
innodb_log_file_size = 256M
innodb_log_files_in_group=2
innodb_max_dirty_pages_pct=75
innodb_flush_method=O_DIRECT
innodb_read_io_threads=8
innodb_write_io_threads=10
innodb_thread_concurrency=32
innodb_io_capacity=5000
read_buffer_size=8M
read_rnd_buffer_size=8M
sort_buffer_size=8M
join_buffer_size=4M
tmp_table_size=16M
query_cache_type=0
query_cache_size=0
thread_cache_size = 16
open_files_limit = 65535 innodb_flush_log_at_trx_commit = 2
skip-external-locking
key_buffer_size = 16M
table_open_cache = 64
net_buffer_length = 8K
myisam_sort_buffer_size = 8M
lower_case_table_names=1
bulk_insert_buffer_size = 1M
group_concat_max_len = 204800 symbolic-links=0
log_timestamps=SYSTEM
log-error=/srv/logs/mysql/mysqld.log
pid-file=/var/run/mysql/mysqld.pid
slow-query-log=On
slow_query_log_file=/srv/logs/mysql/slow-query.log [mysql]
auto-rehash
socket=/srv/data/mysql/mysql.sock [client]
default-character-set=utf8
socket=/srv/data/mysql/mysql.sock [myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M [mysqlhotcopy]
interactive-timeout

初始化MySQL

cd /srv/app/mysql
./bin/mysqld --user=mysql --basedir=/srv/app/mysql --datadir=/srv/data/mysql --pid-file=/var/run/mysql/mysqld.pid --initialize

查看默认root用户的密码

grep 'temporary password' /srv/logs/mysql/mysqld.log

配置开机启动项

  • 办法1(推荐使用)
[root@localhost ~]# vim /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
After=network.target
After=syslog.target [Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/var/run/mysql/mysqld.pid
TimeoutSec=0
PermissionsStartOnly=true
ExecStartPre=/usr/bin/mkdir -p /var/run/mysql
ExecStartPre=/usr/bin/chown mysql:mysql /var/run/mysql
ExecStart=/srv/app/mysql/bin/mysqld --daemonize --pid-file=/var/run/mysql/mysqld.pid
LimitNOFILE = 5000
Restart=on-failure
RestartPreventExitStatus=1
PrivateTmp=false [Install]
WantedBy=multi-user.target
  • 办法2:
cp -r /srv/app/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

以上两种办法任选一种就可以啦, 要想将mysql加入到开机启动可以执行 systemctl enable mysqld

修改root用户的密码

可以使用上面初始化后的密码进行登录

shell>mysql -u root -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

创建可以远程的用户

因为不建议直接用root用户进行远程

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

centos7使用tar包安装mysql5.7的更多相关文章

  1. Salt之CentOS7.5使用RPM包安装MySQL5.7.22

    手动安装参考CentOS7.5使用RPM包安装MySQL5.7.22 目录结构为 install.sls文件 #按顺序分别安装commin libs client server #避免冲突安装comm ...

  2. centos7 二进制安装包安装 mysql5.6

    centos7 二进制安装包安装 mysql5.6 一.下载mysql5.6二进制安装包 http://mirrors.sohu.com/mysql/MySQL-5.6/ 如:mysql-5.6.34 ...

  3. CentOS7 实战源码安装mysql5.7.17数据库服务器

    CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建  mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...

  4. centos7 使用 omnibus包安装方式,安装 gitlab7.4

    centos7 使用 omnibus包安装方式,安装 gitlab7.4 1: gitlab是一个开源的软件,类似于github.com那样的git代码管理仓库: 官网 https://about.g ...

  5. [Docker]CentOS7通过rpm包安装Docker

    前几天写过一篇文章:[Docker]CentOS7下Docker安装教程,直接使用yum命令下载Docker即可.但是前提是你需要***,所以这篇文章来讲讲,如果不会***,该如何安装Docker. ...

  6. centos6.5环境通过rpm包安装mysql5.5.51数据库

    centos6.5环境通过rpm包安装mysql5.5.51数据库 注意:此方法适用于单独安装数据库的需求,如果在该机器上还需要安装php环境,建议mysql通过编译或yum方式安装 1.查找已经安装 ...

  7. 记录CentOS7.X版本下安装MySQL5.7数据库

    记录CentOS7.X版本下安装MySQL5.7数据库  设置rpm下载目录在/opt目录下新建一个目录存放mysql cd /opt sudo mkdir mysql12  下载MySQL的源 wg ...

  8. CentOS7下源码安装mysql5.6

    目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置      单实例配置方法          添加防火墙         ...

  9. CentOS7使用rpm包安装MySQL

    说明 本文写于2017-05-20,使用MySQL-5.7.18.操作系统为64位CentOS Linux release 7.2.1511 (Core),以桌面形式安装. 卸载MariaDB Cen ...

随机推荐

  1. 设计模式-策略模式前端应用校验vue写法

    1.定义:定义一系列算法,把它们一个个封装起来,并且它们可以相互替换 2.实际应用:减少if else的使用,在有多种算法相似的情况下,使用 if-else 所带来的复杂和难以维护,提高维护和可读性, ...

  2. 自然常数e的由来以及计算机为什么是二进制

    背景 ​ 昨晚我在看一本书,叫<数学极客>,看到第六章<e:不自然的自然数>,这个数最早开始接触应该是高一的时候,那时候问老师,这个数是怎么来的,老实说,和圆周率一样,是一个常 ...

  3. 原生实现.NET5.0+ 自定义日志

    一.定义一个静态类 声明一个 ReaderWriterLockSlim 对象 用于并发控制 1 /// <summary> 2 /// IO锁 3 /// </summary> ...

  4. React技巧之中断map循环

    正文从这开始~ 总览 在React中,中断map()循环: 在数组上调用slice()方法,来得到数组的一部分. 在部分数组上调用map()方法. 遍历部分数组. export default fun ...

  5. CF333E Summer Earnings

    CF333E Summer Earnings 题目 https://codeforces.com/problemset/problem/333/E 题解 思路 知识点:枚举,图论,位运算. 题目要求从 ...

  6. mvc url重写

    public class newDomainRoute : Route { private Regex domainRegex; private Regex pathRegex; public str ...

  7. GET 请求和 POST 请求的区别和使用

    作为前端开发, HTTP 中的 POST 请求和 GET 请求是经常会用到的东西,有的人可能知道,但对其原理和如何使用并不特别清楚,那么今天来浅谈一下两者的区别与如何使用. GET请求和POST请求的 ...

  8. (一)java基础篇-----认识java

    1.简单介绍java起源: 1995年,詹姆斯-高斯林在sun公司开发出java编程语言.到2010年,sun公司被Oracle公司收购,而詹姆斯-高斯林也离开了Oracle公司.所以,如今想要安转j ...

  9. 编程技巧│超实用 nginx 中常见的配置合集

    目录 封禁 IP 仅开放内网 负载均衡 列出文件列表 路由转发 开启 gzip 压缩 解决跨域 资源防盗链 Keepalived 提高吞吐量 HTTP 强制跳转 HTTPS 封禁 IP 通过 deny ...

  10. GCD Compression

    题目大意: 有一个数组 a 其中有 2n 个数,把它压缩进数组 b,b 的大小是 n-1. 所谓的"压缩"指的是两种操作: 首先舍弃 a 当中的两个数(你可以任意选择). 然后每次 ...