前言

Centos 8.2
mysql的安装主要有3种方式,第1种是yum安装,第2种是预编译过的二进制包安装,第3种种是源码包编译安装,下面分别对着这三种生产环境最常用的安装方式来讲解。

yum安装mysql

Yum安装mysql是最方便的,yum安装有一个不好的地方,那就是没办法自定义安装路径;
首先去官网下载mysql最新的自己想要的版本的yum的镜像仓库rpm包;

[root@web03 ~]# wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm #直接下载

[root@web03 ~]# md5sum mysql80-community-release-el8-1.noarch.rpm #MD5校验

[root@web03 ~]# ls /etc/yum.repos.d/mysql* #查看yum仓库没有mysql镜像源的

[root@web03 ~]# yum install mysql80-community-release-el8-1.noarch.rpm #安装刚才下载的yum的镜像仓库包

[root@web03 ~]# ls /etc/yum.repos.d/mysql* #查看yum仓库有了mysql镜像源
mysql-community.repo mysql-community-source.repo

[root@web03 yum.repos.d]# yum search mysql| grep mysql-community-server
#显示有这个mysql-community-server.x86_64 就行,我们要装的就是这个mysql-community-server.x86_64 ,如果显示没有mysql-community-server.x86_64 ,那就把原来的BaseOS和AppStream禁用。

[root@web03 yum.repos.d]# vim CentOS-Linux-BaseOS.repo #把原来的源先禁用enable=0
[root@web03 yum.repos.d]# vim CentOS-Linux-AppStream.repo #把原来的源先禁用enable=0

[root@web03 ~]# yum install mysql-community-server #开始安装mysql-community-server

[root@web03 ~]# systemctl start mysqld.service #启动mysql
此时第一次启动mysql服务,会在/var/lib/mysql/目录下生产一堆文件,初始root登录密码也在里面

[root@web03 mysql]# grep “password” /var/log/mysqld.log #查看root初始登录密码

yum安装mysql完成!!!!配置环境变量登录这里就不说了。

二进制安装mysql

从官方网站https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html(有空多读读官方文档)得知,mysql还发行了一种预编译过的二进制包,所以我们只需要解压包并初始化数据库即可,那哪种才是二进制包呢?

由上图的官网可知,带有xxxx.xxx.tar.xz结尾的才是二进制包,下面我们去官方找一下二进制安装包:

可知,这种包需要用到glibc,查看自己的Linux服务器上glibc是多少版本的,然后才去下载对应版本的mysql二进制包即可。
这里我下载了mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz

下面是具体二进制安装mysql步骤如下:
[root@web02 ~]# rpm -qa | grep glibc #查看本机的glibc版本后下载对应的mysql二进制包
[root@web02 ~]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz
[root@web02 ~]# yum install libaio #官方说要安装这个libaio依赖包
[root@web02 ~]# yum install ncurses-compat-libs #官方说要安装ncurses-compat-libs依赖包(建议直接yum install ncurses*)

后备命令:
[root@web02 ~]# xz -d mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz #解压缩,解压缩后压缩包消失
[root@web02 ~]# tar -xvf mysql-8.0.25-linux-glibc2.12-x86_64.tar #上一步解压得到了一个tar包,继续解包

shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar xvf /path/to/mysql-VERSION-OS.tar.xz #如果tar不支持直接解压tar.xz包,可以执行上面的那两条后备命令
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> mkdir mysql-files
shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
shell> bin/mysqld --initialize --user=mysql #初始化数据目录,会生成root初始登录密码
shell> bin/mysql_ssl_rsa_setup #配置自动支持安全连接
shell> bin/mysqld_safe --user=mysql &
shell> cp support-files/mysql.server /etc/init.d/mysql.server
shell>echo ‘PATH=$PATH:/usr/local/mysql/bin’ >> /etc/profile
shell>echo ‘export PATH’ >> /etc/profile

[root@web02 share]# service mysql.server start #启动数据库,未完,继续往下看
Shutting start MySQL… SUCCESS!

成功开启mysql数据库,但是仔细观察的朋友就会发现,上面的步骤并没有复制或创建my.cnf文件,ls support-files/查看support-files目录发现并没有以.cnf结尾的配置文件,那么mysql是怎么启动的呢?一种说法是mysql采用了最小默认值的方式启动的,这里存疑,我们来看官网解释:


从上图得知,mysql8中已经不再提供默认的.cnf配置文件,所以 ls support-files/查看support-files目录发现并没有以.cnf结尾的配置文件,同时查看mysql.server文件,

[root@web02 support-files]# cat mysql.server28  # If you install MySQL on some other places than /usr/local/mysql, then you29  # have to do one of the following things for this script to work:30  #31  # - Run this script from within the MySQL installation directory32  # - Create a /etc/my.cnf file with the following information:33  #   [mysqld]34  #   basedir=<path-to-mysql-installation-directory>35  # - Add the above to any other configuration file (for example ~/.my.ini)36  #   and copy my_print_defaults to /usr/bin37  # - Add the path to the mysql-installation-directory to the basedir variable38  #   below.39  #40  # If you want to affect other MySQL variables, you should make your changes41  # in the /etc/my.cnf, ~/.my.cnf or other MySQL configuration files.42

第28行也说可以自己创建一个/etc/my.cnf文件,那这里从其他地方复制一个/etc/my.cnf文件过来。

shell>scp /etc/my.cnf root@192.168.43.229:/etc/ #复制过去之后需要改一下my.cnf的参数
shell> service mysql.server stop
shell> service mysql.server start

源码包安装mysql

等待验证

Linux下安装mysql(yum、二进制包、源码包)相关推荐

  1. PostgreSql | 数据库 | pg数据库的全安装教程(yum,二进制,源码编译)

                                                       PostgreSql的全安装教程(yum,二进制,源码编译) PostgreSql一般简称为pg, ...

  2. mysql 5.6.23 源码包安装报错_Ubuntu 14.10下编译安装MySQL 5.6.23

    1. 安装环境: Ubuntu Server 14.10 MySQL-5.6.23.tar.gz 2. 安装必备的工具 sudo apt-get install make bison g++ buil ...

  3. linux下安装mysql数据库[yum install版]

    原文链接:linux下安装mysql数据库[yum install版] 在CentOS7中默认安装有MariaDB,这个是MySQL的分支,yum直接覆原有MariaDB, 或安装包报错无法解决依赖问 ...

  4. linux下安装mysql的方式_linux下安装mysql的两种方式

    linux下安装mysql的两种方式 1 源码安装 1 创建mysql用户: useradd mysql passwd mysql 2 解压缩下载的mysql包: tar -zxvf mysql-5. ...

  5. 【已解决】Linux下安装MySQL数据库

    [经验贴]安装环境为:Ubuntu12.04,MySQL5.5.28 在Linux下安装MySQL有三种方式:第一种以rpm的二进制文件分个安装,第二种是自己编译源码后安装,最后一种是以二进制tar. ...

  6. Centos下安装mysql(二进制版)

    Centos下安装mysql(二进制版) 1.下载安装包,选择相应的平台.版本,比如,选择64位Linux平台下的MySQL二进制包"Linux-Generic (glibc 2.5)(x8 ...

  7. Linux下安装mysql后无法启动的解决方法

    在Linux下安装完mysql后,mysql服务无法启动,总是failer.       这个不是因为mysql安装失败,而是因为启动了SELinux.       进入/etc/selinux/co ...

  8. linux按照mysql为何如此简单_手把手教你在Linux下安装MySQL

    在Linux操作系统下,安装MYSQL有两种方式:一种tar安装方式,另外一种是rpm安装方式.这两种安装方式有什么区别呢?尽管我们在Linux下常用tar来压缩/解压缩文件,但MYSQL的tar格式 ...

  9. 在Linux下安装MySQL(详细)

    在Linux下安装MySQL数据库 ①下载并上传到/opt/soft(目录是自己创建的) ②解压: 输入: tar -xvf mysql-5.7.27-1.el7.x86_64.rpm-bundle. ...

  10. 定时任务-Quartz、Mycat简单入门、Linux下安装MySQL、Linux下安装MyCAT、Mycat的数据库分片、Mycat读写分离

    表现层:页面 后台管理系统.商城门户.搜索系统.订单系统.商品详情系统.购物车系统 中间件:dubbo 系统之间的通信,服务的统计,rpc协议远程过程调用 同步通信 服务层:实现具体的业务逻辑 商品服 ...

最新文章

  1. Metasploit设置VERBOSE参数技巧
  2. 2020中国年度AI评选结果揭晓!领航企业、商业人物、创新产品……AI落地最佳参考就在这里...
  3. JS中Base64的编码与解码
  4. 一场惊心动魄的国际黑客入侵保卫战
  5. 打印机打印网页不清晰_针式打印机不开机故障维修
  6. [html] html6即将到来,你最期待的是什么特性呢?
  7. 很多人问为什么使用联合索引,为什么不建两个单独的索引呢?
  8. (二)javascript中int和string转换
  9. oracle sql 字段行转列
  10. Python替换多个tomcat端口号
  11. getUpdateCount成员函数不能返回正确数量
  12. 使用阿里云邮件推送服务发送验证码
  13. 迪普应用防火墙产品线
  14. 报税远程服务器返回错误,紧急 | 增值税申报失败,调用系统服务出错,怎么办?...
  15. 终于找到可转载的摄影基础知识贴了
  16. Mac 配置maven
  17. Uncaught TypeError: Cannot add property 0, object is not extensible 引起的思考
  18. 银河麒麟+WIN10双系统安装
  19. Cruehead-CrackMe-3
  20. 关于【你们数据仓库是怎么设计的】如何回答?

热门文章

  1. signature=ed12edba242e439d545c9f98deb5e896,PROJECTION APPARATUS
  2. mysql 存储引擎文件夹_4种常用MySQL存储引擎
  3. 分层图最短路【bzoj2763】: [JLOI2011]飞行路线
  4. 浮动元素遇到标准流元素 会发生转角遇到爱
  5. C#中使用Log4Net记录日志
  6. istio入门(01)istio的优势在哪里?
  7. Amobea读写分离
  8. ui-router 之 $state.go
  9. 服务器环境配置nginx / php / php-fpm(二)
  10. Java出现OutOfMemoryError