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

  • 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. 「BUAA OO Unit 4 HW16」第四单元总结与课程回顾

    「BUAA OO Unit 4 HW16」第四单元总结与课程回顾 目录 「BUAA OO Unit 4 HW16」第四单元总结与课程回顾 Part 0 第四单元作业架构设计 架构设计概要 AppRun ...

  2. Java TIF、JPG、PNG等图片转换

    代码如下: public static void main(String[] args) { try { BufferedImage bufferegImage = ImageIO.read(new ...

  3. .NET服务治理之限流中间件-FireflySoft.RateLimit

    概述 FireflySoft.RateLimit自2021年1月发布第一个版本以来,经历了多次升级迭代,目前已经十分稳定,被很多开发者应用到了生产系统中,最新发布的版本是3.0.0. Github:h ...

  4. Linux 批量杀死进程(详细版本)

    使用场景 当程序中有使用到多进程且进程数较多的情况,如下图,且需要通过控制台杀死所有的 GSM_run.py 的进程时,利用 kill 命令一个一个的去结束进程是及其耗时且繁琐的,这时就需要我们的ki ...

  5. 数组容器(ArrayList)设计与Java实现,看完这个你不懂ArrayList,你找我!!!

    数组容器(ArrayList)设计与Java实现 本篇文章主要跟大家介绍我们最常使用的一种容器ArrayList.Vector的原理,并且自己使用Java实现自己的数组容器MyArrayList,让自 ...

  6. filebeat + logstash 日志采集链路配置

    1. 概述 一个完整的采集链路的流程如下: 所以要进行采集链路的部署需要以下几个步聚: nginx的配置 filebeat部署 logstash部署 kafka部署 kudu部署 下面将详细说明各个部 ...

  7. spring boot实现不同生产环境下的文件配置

    配置不同生产环境 本文适用于开发环境下需要打包项目至生产环境,避免开发环境的配置文件泄露. 设置maven 作用:1. 手动调节运行时的不同环境 2. 打包时可以不会有其它环境的文件 注:每次换环境前 ...

  8. SQL中 Decode 和 Sign 语法的简单用法

    含义解释:decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译值1)ELSIF 条件=值2 THEN R ...

  9. React报错之map() is not a function

    正文从这开始~ 总览 当我们对一个不是数组的值调用map()方法时,就会产生"TypeError: map is not a function"错误.为了解决该错误,请将你调用ma ...

  10. Java8新特性: CompletableFuture详解

    CompletableFuture实现了CompletionStage接口和Future接口,前者是对后者的一个扩展,增加了异步回调.流式处理.多个Future组合处理的能力,使Java在处理多任务的 ...