高调起标题,低调写文章

过程步骤三步走

第一步 安装准备

1.0、检查电脑是否预装了mysql(预装的mysql叫mariadb ),有则卸载删除

rpm -qa | grep mariadb  #查询是否预装mysqlrpm -e --nodeps mariadb-libs  #有返回数据则使用该命令卸载

1.1、根据自己的linux系统类型选择下载相应的二进制压缩包(不清楚可以用通用压缩包,文章末尾提供压缩包),然后通过xftp工具传输到linux系统上(这个相信不会有问题吧)

1.2、解压,解压后改名 (我的压缩包是放在/opt目录下,下面也作为mysql的安装目录)

注:这个mysql应该放在哪个目录可以自己选择,opt目录一般存放第三方软件或服务,所以我选择/opt

tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql5.7  #改名为mysql5.7

 解压过程嘟嘟嘟一大串,使用ll查看解压得到的文件夹​

第二步  准备mysql用户即用户组,完成相关配置

2.1、添加mysql用户和组

groupadd mysql   #添加名为mysql的用户组useradd -r -g mysql mysql   #添加名为mysql的用户,并将其添加到mysql组中

2.2、创建mysql数据文件夹并授权

在opt目录下新建一个数据目录data,子文件夹为mysql用于管理mysql数据库,并把它的所有者和所有组改为刚才创建的用户和组(由mysql用户和mysql组成员来管理mysql数据)

 mkdir -p ./data/mysql   #创建mysql数据目录,后面会用到chown mysql:mysql -R ./data/mysql  #将mysql数据目录的所有者和所有组改为刚才创建的mysql用户和组

授权成功图

2.3、配置mysql相关设置,mysql初始化会自动读取/etc目录下的my.cnf文件,这个文件一般是不存在的,需要我们自己创建,如果你有这个文件说明你的系统预装了mysql或者曾经安装过,如果存在,请参考我的第一步卸载预装的mysql然后再进行

使用vim命令编辑/etc/my.cnf(没有这个文件会自动新建)

vim /etc/my.cnf

配置及解释如下:

[mysqld]
bind-address=0.0.0.0
#mysql监听的ip地址,如果是127.0.0.1,表示仅本机访问,0.0.0.0表示全地址可以访问(任何主机)
port=3306  #mysql运行在哪个端口
user=mysql  #mysql以什么用户运行
basedir=/opt/mysql5.7  #mysql主目录
datadir=/opt/data/mysql  #mysql的数据目录
socket=/tmp/mysql.sock   #mysql以socket方式运行的sock文件位置
log-error=/opt/data/mysql/mysql.err  #错误日志位置
pid-file=/opt/data/mysql/mysql.pid   #进程id文件
#character config
character_set_server=utf8mb4  #服务器使用的字符集
symbolic-links=0   #是否支持符号链接,即数据库或表可以存储在my.cnf中指定datadir之外的分区或目录,为0不开启
explicit_defaults_for_timestamp=true​  #mysql中TIMESTAMP类型和其他的类型有点不一样(在没有设置explicit_defaults_for_timestamp=1的情况下)

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/opt/mysql5.7
datadir=/opt/data/mysql
socket=/tmp/mysql.sock
log-error=/opt/data/mysql/mysql.err
pid-file=/opt/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

2.4、数据库初始化(这一步才算是正式安装) 

 先cd到mysql目录的bin目录下

cd /opt/mysql5.7/bin #先cd到bin目录./mysqld --initialize --user=mysql #mysql初始化命令,必须在bin目录下使用

以下是个人感慨,不感兴趣可以跳过 

这一步我必须说两句了,我看了很多帖子,都TM在./mysqld后面加很多配置,我起先安装就是按照这样的帖子做的,结果我转了不下十遍,期间还换了阿里云买的服务器来试,都一直报底下这个错误,找这个错误的帖子分析原因也无济于事,在这里我真得想对那些害人的帖子说几句qnmb,很多帖子完全就是从其他论坛搬来的,自己根本就没有测试过。

我看到的大部分帖子初始化这步的操作:

结果启动就是报底下这个错误 

Starting MySQL... ERROR! The server quit without updating PID file (/opt/data/mysql/mysql.pid).​

试八百遍估计都是这样,真TM无语

以上出现的错误(就本文安装过称来说),很简单,你之前在my.cnf里配置了mysql的相关设置,结果在初始化的时候又在配置,这样就会起冲突,my.cnf里配置就无效了,这是多此一举,同时会覆盖my.cnf里的配置,后面没有加pid-file=/opt/data/mysql/mysql.pid这个配置,所以上面一直会报pid无法更新的错误,因为mysql.pid这个文件无法创建(手动创建是无效的)

 2.5、配置mysql服务,启动mysql

使用下面命令将mysql.server复制到/etc/init.d/mysql中(将mysql加入服务)​,然后启动服务

cp /opt/mysql5.7/support-files/mysql.server /etc/init.d/mysql  #添加mysql服务service mysql start   #启动mysql

 补:查看mysql服务转态命令(service mysql status)

 第三步 使用mysql

3.1、  登录mysql数据库,更换root用户密码

mysql -u root -p   #以root用户登录mysqlSET PASSWORD = PASSWORD('你要设置的密码');   #分号不要丢ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;  #修改密码

登录mysql (会让你输入密码,粘贴刚才复制的密码)

修改root密码

 使用Navicat连接

使用root账户和你刚才你设置的密码,其他不同改

  

大功告成!!! 

下面介绍mysql服务的配置,大家可以选择着看

下面两个是关于chkconfig的命令,具体使用参考chconfig命令的介绍

chkconfig --add mysql  #将mysqld服务加入到系统服务,开机自启chkconfig --list mysql  #检查mysqld服务是否已经生效

使用systemd管理MySQL服务器:http://t.csdn.cn/SChz7http://t.csdn.cn/SChz7

常见问题:http://t.csdn.cn/avecwhttp://t.csdn.cn/avecwMySQL压缩包
mysql压缩包https://pan.baidu.com/s/1uvHEoJHRa9K6CrbpBUdEWQ?pwd=i9ik

欢迎留言反馈,看到会回复,抱拳!

一文学会Linux安装Mysql5.7(解压方式),加上配置详解,帮你完美避坑相关推荐

  1. SpringSecurity权限管理框架系列(六)-Spring Security框架自定义配置类详解(二)之authorizeRequests配置详解

    1.预置演示环境 这个演示环境继续沿用 SpringSecurit权限管理框架系列(五)-Spring Security框架自定义配置类详解(一)之formLogin配置详解的环境. 2.自定义配置类 ...

  2. tar linux 跳过解压,【linux命令】linux解压压缩命令tar详解以及压缩的时候如何跳过某一个压缩目录或文件...

    通过SSH访问服务器,难免会要用到压缩,解压缩,打包,解包等,这时候tar命令就是是必不可少的一个功能强大的工具.linux中最流行的tar是麻雀虽小,五脏俱全,功能强大. tar命令可以为linux ...

  3. log4j加载配置方式和配置详解

    log4j配置详解 log4j的配置文件有两种格式分别是xml和properties.本文只讲解properties格式.比较properties简洁易懂. log4j加载配置文件方式 大家在刚接触l ...

  4. linux环境JAVA解压zip_Linux文件解压缩详解

    tar命令 我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名, ...

  5. java环境变量设置详解_JAVA环境变量配置详解(Windows)

    JAVA环境变量JAVA_HOME.CLASSPATH.PATH设置详解 Windows下JAVA用到的环境变量主要有3个,JAVA_HOME.CLASSPATH.PATH. JAVA_HOME指向的 ...

  6. struts2配置详解(struts.xml配置详解)

    本文转自:http://www.cnblogs.com/fmricky/archive/2010/05/20/1740479.html struts.xml是我们在开发中利用率最高的文件,也是Stru ...

  7. Linux日志切割神器Logrotate的原理和配置详解,建议收藏!!!

    对于 Linux 系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分 Nginx日志之类的 CRON脚本,大家似乎遗忘了 Logrotate,争相发 ...

  8. CLion安装、汉化、激活、配置详解

    CLion是一款专为开发C及C++所设计的跨平台IDE.它是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力,提高开发人员的工作效率. 这种强大的IDE帮助开发人员在Linux ...

  9. python环境及pycharm开发环境安装_Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)...

    PyQt5相关安装 python 版本 python 3.6.3 1.安装PyQt5 执行命令: pip install pyqt5 2.安装PyQt5-tools 执行命令:pip install ...

最新文章

  1. ios11更新提示信任_Odyssey越狱工具体验、Cydia更新
  2. 线性回归之数学:求导公式
  3. 如何提高强化学习效果?内在奖励和辅助任务
  4. 网络编程学习笔记(UDP的connect函数)
  5. 苹果11怎么关掉横屏_苹果手机这些常规操作你可能不会!教你省电又省心?
  6. UNITY 优化之带Animator的Go.SetActive耗时问题,在手机上,这个问题似乎并不存在,因为优化了后手机上运行帧率并未明显提升...
  7. 基于ARM的linux嵌入式操作系统
  8. 人类大脑每日24小时工作节奏表
  9. 阿里巴巴:全链路压测体系建设方案的思考与实践
  10. Serverless:云函数 + 小马BI,将报表极速搬上云
  11. Mybatis源码:Executor 模板模式
  12. python bokeh_提升视觉效果:使用Python和Bokeh制作交互式地图
  13. 再见 XShell 和 ITerm 2,是时候拥抱全平台高颜值终端工具 Hyper 了!
  14. PL/SQL 结构与实例
  15. PostgreSQL函数(存储过程)----笔记
  16. 【NOIP2004】【Luogu1090】合并果子
  17. ESET NOD32
  18. Unity UGUI坐标和世界坐标转化
  19. C语言实验:输入任意一个日期的年、月、日的值,求出从公元1年1月1日到这一天总共有多少天,并求出这一天是星期几。
  20. 点击input文本框,文字消失 JS

热门文章

  1. ORACLE 11G中的ADR介绍:
  2. 遍历List集合的五种方式
  3. 通过Promise和JQuery获取网易云音乐热评
  4. win7接收android无线显示,如何让win7系统笔记本和电视无线同屏显示|win7系统笔记本和电视无线同屏显示的设置方法...
  5. 北信源网络接入控制管理系统 软件
  6. 【零基础学STM32】CubeMx+HAL配置按键点灯实验
  7. 服务器不稳定降权多久会恢复,[实例]首页被降权24小时恢复手记
  8. Android对象封装及按汉语拼音排序
  9. SpringBoot入门-分组校验
  10. Goole Hacking