目录

一.下载安装包

二.安装脚本

三.登录


一.下载安装包

注:选二进制版本,64位


二.安装脚本

先将压缩包下载下来,用xftp传进来

#!/bin/bash
#解决软件的依赖关系
#ncurses-compat-libs测试可用
yum install cmake ncurses-devel gcc gcc-c++ vim lsof bzip2 openssl-devel ncurses-compat-libs -y
#解压mysql二进制安装包
tar xf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
#移动mysql解压后的文件到/usr/local下改名叫mysql
mv mysql-5.7.38-linux-glibc2.12-x86_64 /usr/local/mysql
#新建组和用户mysql
groupadd mysql
#mysql这个用户的shell 是/bin/false属于mysql组
useradd -r -g mysql -s /bin/false mysql
#关闭firewalld防火墙服务,并且设置开机不要启动
service firewalld stop
systemctldisable firewalld
#临时关闭selinux
setenforce 0
#永久关闭selinux
sed -i '/^SELINUX=/ s/enforcing/disabled/' /etc/selinux/config
#新建存放数据的目录
mkdir /data/mysql -p
#修改/data/mysql目录的权限归mysql用户和mysql组所有,这样mysql用户可以对这个文件夹进行读写了
chown mysql:mysql /data/mysql/
#只是允许mysql这个用户和mysql组可以访问,其他人都不能访问
chmod 750 /data/mysql/
#进入/usr/local/mysql/bin目录
cd /usr/local/mysql/bin/
#初始化mysql #--initialize初始化--basedir安装路径--datadir指定数据库存放路径
##初始化的时候会产生一些输出,里面有临时密码,将其重定向到passwd.txt文件中
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql  &>passwd.txt
#让mysql支持ssl方式登录的设置
./mysql_ssl_rsa_setup --datadir=/data/mysql/
#正则匹配获得临时密码
tem_passwd=$(cat passwd.txt |grep "temporary" |awk '{print $NF}')
#$NF表示最后一个字段
#abc=$(命令)优先执行命令,然后将结果赋值给abc#修改PATH变量,加入mysql bin目录的路径
#临时修改PATH变量的值
export PATH=/usr/local/mysql/bin/:$PATH
#重新启动linux系统后也生效,永久修改
echo 'PATH=/usr/local/mysql/bin:$PATH' >>/root/.bashrc#复制support-files里的mysql.server文件到/etc/init.d/目录下叫mysqld
#因为mysql官方提供了这样一个脚本可以用来使用service启动mysql
cp ../support-files/mysql.server /etc/init.d/mysqld#修改/etc/init.d/mysqld脚本文件里的datadir目录的值
sed -i '70c datadir=/data/mysql' /etc/init.d/mysqld#生成/etc/my.cnf配置文件
cat >/etc/my.cnf <<EOF
[mysqld_safe][client]
socket=/data/mysql/mysql.sock[mysqld]
#socket文件的路径
socket=/data/mysql/mysql.sock
#监听哪个端口
port = 3306
#文件描述符
open_files_limit =8192
#innodb是mysql缓存引擎占用内存大小,越大运行越快
innodb_buffer_pool_size = 512M
character-set-server=utf8[mysql]
auto-rehash
prompt=\\u@\\d \\R:\\m mysql>
EOF
#修改内核的open file的数量
ulimit -n 1000000
#设置开机启动的时候也配置生效
echo "ulimit -n 1000000" >/etc/rc.local
chmod +x /etc/rc.d/rc.local#启动mysqld进程
service mysqld start#将mysqld添加到linux系统里服务管理名单里/sbin/chkconfig --add mysqld
#设置mysqld服务开机启动
/sbin/chkconfig mysqld on#初次修改密码需要使用--connect-expired-password选项
#-e后面接的表示是在mysql里需要执行命令execute执行
#set password='Sanchuang123#';修改root用户的密码为Sanchuang123#
mysql -uroot -p$tem_passwd --connect-expired-password -e "set password='Sanchuang123#';"#登录
mysql -uroot -p'Sanchuang123' -e 'show databass;'

1,Linux下安装Mysql为啥要创建对应的用户和用户组?

让mysql运行的时候使用一个独立的账号,如果mysql被黑了那么开始拿到的权限就是那个创建的账号而不是默认的root

当系统中文件的权限未设定给Mysql用户以及用户组时,Mysql用户无法进行读写执行操作。而如果MySQL被黑了,可以通那么开始拿到的权限就是那个创建的账号而不是默认的root,在MySQL启动的时候,单进程mysqld,该进程的属主就是mysql,这样就保证了mysql服务的独立性,即使mysql服务被黑掉,得到了mysql用户权限,也不会影响整个系统的安全。


2、mysql_ssl_rsa_setup简介

Mysql之加密连接mysql_ssl_rsa_setup_恒悦sunsite的博客-CSDN博客_mysql_ssl_rsa_setup

  mysql5.7之前的版本是不提供ssl安全连接的,其在网络中数据都是以明文进行传输的。mysql_ssl_rsa_setup程序用于创建 SSL 证书和密钥文件以及 RSA 密钥对文件,以支持使用 SSL 的安全连接和使用 RSA 通过未加密连接的安全密码交换(如果这些文件丢失)。 如果现有的 SSL 文件已经过期,mysql_ssl_rsa_setup也可用于创建新的 SSL 文件。MySQL5.7默认是开启SSL连接,如果强制用户使用SSL连接,那么应用程序的配置也需要明确指定SSL相关参数,否则程序会报错。


三.登录

1,执行完成脚本后要重新登录才会重新加载改的变量

su - root

2,登录mysql

mysql -uroot -p'Sanchuang123'

mysql编译安装脚本(附详解)相关推荐

  1. 编译安装Nginx步骤详解

    编译安装Nginx步骤详解 1,去Nginx官方网站下载源码包并解压 curl -O 或wget 跟下载链接 tar -xf 解压 2,进入nginx解压后的目录执行./configure - ./c ...

  2. mysql 数据库安装命令_教你MySQL数据库的编译安装以及命令详解(5.7版本)

    一.安装MySQL所需的环境依赖包 [root@localhost opt]# yum -y install gcc gcc-c++ make ncurses ncurses-devel bison ...

  3. LNMP nginx1.4.6+php5.5.11+mysql5.6.17+mecache+opcache编译安装+opcache参数详解+opcache可视化php页面代码

    可能要用到的软件: libiconv-1.13.tar.gz  libmcrypt-2.5.8.tar.gz  mcrypt-2.6.8.tar.gz  mhash-0.9.9.9.tar.gz  m ...

  4. linux编译安装网卡驱动详解(网卡丢包)

    安装编译网卡驱动 这两天发现一台server丢包很严重,使用cacti监控工具时能获得snmp包,时常又不能,丢包严重,导致使用ssh工具连接过慢,连接数据库访问超时,此时要先确定是中病毒还是网卡问题 ...

  5. Nginx编译安装及配置文件详解

    写在前面 Centos版本:Centos 7.6 - 64bit Nginx版本:1.20.2 一.什么是Nginx Nginx (engine x) 是一款轻量级的Web 服务器 .反向代理服务器及 ...

  6. MySQL数据库安装与配置详解

    目录 一.概述 二.MySQL安装 三.安装成功验证 四.NavicatforMySQL下载及使用 一.概述 MySQL版本:5.7.17 下载地址:http://rj.baidu.com/soft/ ...

  7. mysql安装教程8.0.21安装_mysql8.0.21安装教程图文详解

    1.下载 下载链接 点击download,这里可能需要登录甲骨文的账号,登录一下即可 2.解压 下载好会得到一个安装包 把它解压到一个能找到的目录下即可,我的是这样(my.ini文件你们应该没有) 3 ...

  8. mysql data文件夹恢复_【专注】Zabbix源码安装教程—步骤详解(2)安装并配置mysql...

    四.安装并配置mysql(1) 解压mysql-5.7.26.tar.gz与boost_1_59_0.tar.gz #tar -xvf mysql-5.7.26.tar.gz #tar -xvf bo ...

  9. mysql 5.5.18下载_MySQL5.7.18下载和安装过程图文详解

    MySql下载 1.打开官网找到下载路口,这里直接给出下载的地址 2.选择64位版本 3.直接下载 MySql5.7.18.1安装过程 1   .运行安装软件,接受协议 2.选择默认安装 3.下一步到 ...

最新文章

  1. 学历高和学历低的眼界差距有多大?
  2. Docker 网络基础原理
  3. Android之jni解决JNIEnv跨线程问题
  4. c语言中字符串 x,使用c语言解析字符串176x144中的数字
  5. 荔枝糖FPGA开发板相关博客
  6. java 整形数据类型_3.2Java基本数据类型之整型
  7. 【网络安全】XCodeGhost事件刨根问底
  8. BI_DBA_安装(3):安装informatic
  9. 【反反爬实战】网易有道翻译(免费、即时的多语种在线翻译)
  10. C#一个解决方案创建多个项目
  11. python爬房源信息_Python爬取链家二手房源信息
  12. linux 剪切合并文件夹,使用PDF-Shuffler拆分和合并PDF文件[Linux] | MOS86
  13. Linux 时间一致性环境NTP/Chrony服务器部署配置
  14. 高中数理化杂志高中数理化杂志社高中数理化编辑部2022年第21期目录
  15. java编写某计算器控制台程序_计算器 - 进阶的憨狗 - 博客园
  16. 红米6A 9.93开发版 刷 magisk面具 方法
  17. [附源码]JAVA+ssm网上游戏商店设计(程序+Lw)
  18. 阿里巴巴新手,如何入门,该从哪里开始学习-阿里巴巴学习--潭州阿里巴巴
  19. code vs 集成tfs_tfs – VSCODE和TFVC如何连接?
  20. FPGA PLL时钟经 ODDR送到管脚

热门文章

  1. java打印Excel表格
  2. [Java] 用java来突破一下人类极限
  3. Screen, Viewport 和 Rect 浅析
  4. 会定时提醒的贴心提示板之核心语音芯片(WT588F02B)和闹钟部件
  5. 深度学习的典型应用和挑战及未来
  6. 转换达人教你如何将jpg转换成pdf
  7. STP Viewer无法打开stp文件
  8. NLTK自然语言处理入门
  9. matlab调幅举例,基于MATLAB的单边带调幅和解调的实现设计.doc
  10. HTML CSS 制作响应式价格表单展示id1075-网页前端设计