安装之前需要先卸载mysql

1.1、下载压缩包

 [root@guohaien package]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

其中下载地址的获取方法如下所示

1、打开mysql官网

2、按下图所示的步骤点击

3、右键下图标记位置,复制下载地址

1.2、给mysql目录创建一个用户组和用户,并在mysql目录下创建一个data目录,具体的操作如下所示

 [root@guohaien soft]# groupadd mysql
[root@guohaien soft]# useradd -g mysql -d /soft/mysql mysql
[root@guohaien soft]# cd mysql
[root@guohaien mysql]# mkdir data

1.3、先解压包,后进入文件夹mysql-5.7.25-linux-glibc2.12-x86_64,将里面的内容移动到上面创建的mysql目录下,并删除该文件夹,最后进入到mysql目录中,具体的操作顺序如下所示

 [root@guohaien package]# tar zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
[root@guohaien package]# cd mysql-5.7.25-linux-glibc2.12-x86_64
[root@guohaien mysql-5.7.25-linux-glibc2.12-x86_64]# mv * /soft/mysql
[root@guohaien mysql-5.7.25-linux-glibc2.12-x86_64]# cd ..
[root@guohaien package]# rm -rf mysql-5.7.25-linux-glibc2.12-x86_64
[root@guohaien package]# cd ../mysql

1.4、初始化数据库,初始化的时候会生成一个随机密码,需要记录下来,后面会用到,其中密码在如下图标志的位置

初始化是可能会出现以下问题

其中一种输出是如下所示

./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

这是因为没有安装libaio,只需要执行如下命令即可

 [root@guohaien mysql]# yum install -y libaio

还有可能输出如下结果,这是因为data目录不为空,只需要进入到data目录执行rm -rf *

2019-03-19T06:04:15.345713Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-03-19T06:04:15.347456Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2019-03-19T06:04:15.347485Z 0 [ERROR] Aborting

1.5、修改mysql.server文件中的basedir和datadir的值,一下是修改文件的命令,和修改的位置

 [root@guohaien mysql]# vim support-files/mysql.server

修改完成按Esc,然后输入wq退出

1.6、创建配置文件

给默认的my.cnf文件备份

 [root@guohaien mysql]# cp /etc/my.cnf /etc/my.cnf.bak

可以将my.cnf文件修改为如下所示

[mysqld]
basedir=/soft/mysql
datadir=/soft/mysql/data
character_set_server=utf8
init_connect='SET NAMES utf8'
[client]
default-character-set=utf8

1.7、启动mysql服务

[root@guohaien mysql]# ./support-files/mysql.server start

若输出以上结果则启动成功

可以通过如下步骤改变启动的方法,并设置为开机自启动

 [root@guohaien mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@guohaien mysql]# systemctl enable mysqld
mysqld.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig mysqld on

修改后的mysql服务的启动命令有两种为

[root@guohaien mysql]# service mysqld start
[root@guohaien mysql]# systemctl start mysqld

其中关闭和重启服务只需要将start改为stop和restart即可

1.8、修改登录密码

[root@guohaien mysql]# ./bin/mysqladmin -u root -p password
Enter password:
New password:
Confirm new password:
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

先输入原始密码,在输入两次新密码(其中原始密码即为上面生成的那个随机密码)

也可以使用如下命令修改密码

 [root@guohaien mysql]# ./bin/mysqladmin -uroot -p'原始密码' password '新密码'

设置完成后就能使用新密码登录数据库

 [root@guohaien mysql]# ./bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.25 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

可以给登录服务创建一个软链接

[root@guohaien mysql]# ln -s /soft/mysql/bin/mysql /usr/bin/mysql

这样就能将上面的./bin/mysql 替换为mysql

1.9、mysql远程授权

目前只能在该服务器上登录mysql,远程并不能访问,登录mysql后执行如下sql

mysql> grant all privileges on *.* to 'root'@'%' identified by '密码';
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

以上即为mysql5.7在centos7.6 64位系统下的安装及配置

2.1、关闭mysql服务

 [root@guohaien /]# service mysqld stop

2.2、检查是否有rpm包,若是没有用rpm安装过mysql,应该就没有,若是有的话就要删除

检查的命令

 [root@guohaien /]# rpm -qa|grep -i mysql

删除的命令

 [root@guohaien /]# rpm -e 包名

有时候会有依赖无法删除,可以用命令

 root@guohaien /]# rpm -e --nodeps 包名

2.3、检查是否有mysql相关目录或文件,若有则删除

检查的命令

 [root@guohaien /]# find / -name mysql

删除的命令

 [root@guohaien /]# rm -rf 目录或文件

2.4、删除mysql用户和分组

删除用户命令

 [root@guohaien /]# userdel mysql

删除分组命令

 [root@guohaien /]# groupdel mysql

卸载完成后就可以开始安装mysql

Linux安装mysql教程的更多相关文章

  1. Linux 安装Mysql(图文教程)

    原文:Linux 安装Mysql(图文教程) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net ...

  2. Linux 安装 MySQL 8 数据库(图文详细教程)

    本教程手把手教你如何在 Linux 安装 MySQL 数据库,以 CentOS 7为例. 1. 下载并安装 MySQL 官方的 Yum Repository wget -i -c https://re ...

  3. linux安装mysql后root无法登录 sql 无法登录

    linux安装mysql后root无法登录 问题:[root@localhost mysql]# mysql -u root -pEnter password: ERROR 1045 (28000): ...

  4. linux安装mysql~~~mysql5.6.12

    Linux安装mysql服务器 准备: MySQL-client-5.6.12-1.rhel5.i386.rpm MySQL-server-5.6.12-1.rhel5.i386.rpm 首先检查环境 ...

  5. linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题]

    linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题] 一.查看mysql是否已经安装 使用“whereis mysql”命令来查看mysql安装路径: [root@h ...

  6. linux安装mysql服务分两种安装方法:

    linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度 ...

  7. 阿里云Centos7上安装MySQL教程

    1 基本安装过程 1.查看系统是否安装了mysql软件 # rpm -qa|grep -i mysql 2.将已经安装过的软件卸载掉.注意:这样的卸载是不彻底,不过这里够用了 # yum remove ...

  8. linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through socket

    我是小白,大佬勿喷 *** linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through ...

  9. CentOS7.5 安装MySql教程

    CentOS7位安装MySql教程 1.先检查系统是否装有mysql rpm -qa | grep mysql 2.下载mysql的repo源 wget http://repo.mysql.com/m ...

随机推荐

  1. spring boot实现异步调用

    今天在这里学习下使用springboot的异步调用async 首先使用@EnableAsync开启异步功能 /** * @author fengzp * @date 17/5/8 * @email f ...

  2. ASP.NET Core 2.0 多应用实现Cookie共享

    前言 .NET Core 2.0 发布之后,在Authentication中间件部分,相关API有不少改动(官方文档),本文主要讲的就是实现应用Cookie共享,对Cookie中间件使用不了解的可以去 ...

  3. Mac OSX配置XAMP虚拟主机

    在前端工作中,有时候需要配置下环境,这篇文章主要是记录了在wamp中配置虚拟主机 首先需要下载wamp软件和navicat数据库管理软件进行管理,下面默认已经下载好所需软件.并且打开服务. 第一步:把 ...

  4. markdown的学习记录

    一.markdown用处: 写博客,写微信公众号等等 二.准备工作: 工具使用:由于代码经常使用idea,所以继续使用idea编写markdown,但需要安装插件:MarkDown Navigator ...

  5. iOS数据持久化--归档

    一.简介 在使用plist进行数据存储和读取,只适用于系统自带的一些常用类型才能用,且必须先获取路径相对麻烦: 偏好设置(将所有的东西都保存在同一个文件夹下面,且主要用于存储应用的设置信息 归档:因为 ...

  6. C++类和对象(一)&&实现offsetof宏&&this指针

    一.目录 1.对象的相关知识 2.类的定义 3.类的实例化 4.类对象模型 5.模拟实现offsetof宏 6.this指针 二.正文 1.对象的相关知识 C语言是面向过程的,关注的是过程,分析求解问 ...

  7. python 相关模块安装 国内镜像地址

    python 相关模块安装 国内镜像地址 pipy国内镜像目前有: http://pypi.douban.com/  豆瓣 http://pypi.hustunique.com/  华中理工大学 ht ...

  8. android stdio Error Could not find com.android.tools common 25.2.2

    Error:Could not find com.android.tools:common:25.2.2. Searched in the following locations: file:/D:/ ...

  9. git commit --amend的撤销方法

    某同事执行git commit 时太兴奋,执行了 git commit --amend 慌了,不敢编辑上一个commit的description了,直接选择了wq退出,然而git毕竟强大,默认将改动合 ...

  10. flex布局中transform出错

    在flex布局下,若应用transform 的动画的子元素没有使用进行定位,则动画过程中,子元素将相对display:flex的元素进行static定位 动画结束后位置正常: 修复代码只需要posit ...