mysql作为日常开发中常用到的数据库,对每个程序员来说至关重要,今天就跟着我来进行一次mysql的安装之旅吧。

一、安装

1、安装包的方式

1.1、获取安装包

对mysql有过接触的人来说,都知道mysql分为商业版和社区版,由于这里仅仅作为开发、学习之用,这里选择社区版进行安装。首先打开官方网站。

https://www.mysql.com/

进入到下载页,划到最下方可以看到社区版的下载链接,如下图,

跳转到社区版的下载页面

可以看到提供了多种安装的方式,这里先选择二进制文件的安装包这种方式,进入到相应的页面,选择需要的版本进行下载即可,我这里要安装的环境是centos7,所以这里选择了如下版本,

下载完成后,使用rz命令上传到linux机器上,rz命令是linux下的命令,没有该命令的可以自行百度如何安装。

1.2、使用安装包安装(未成功安装)

在上面的步骤中已经成功的把安装包上传到linux机器上,如上图,下面进行解压,使用如下命令,

tar -xvf mysql-8.0.26-1.el8.x86_64.rpm-bundle.tar 

解压完成后,可以看到这些文件

进行安装即可,这里是rpm包,所以要使用rpm命令进行安装

显示下面的内容,

表示的缺少依赖,比如缺少GLIBC_2.28、OPENSSL_1_1_0等,我这里一直没安装成功依赖,所以这里不再继续,有了解的朋友可以给提个建议。下面进行另外一中方式的安装。

2、yum的方式

2.1、获取安装文件

在mysql的下载页有mysql的yum文件,

下载此文件到本地,

把该文件上传到linux机器上,前面说到可以使用rz命令,我这里已经传好,

下面进行安装

2.2、安装

2.2.1、添加mysql的rpm到yum源

由于这里使用的yum的安装方式,所以要把上述的yum文件添加到yum源中,

yum localinstall mysql80-community-release-el7-3.noarch.rpm 

检查yum源中的mysql

yum  repolist all | grep mysql 

可以看到刚添加的状态为启用,如上图,另外,如果有其他版本的状态为启用的,一定要关闭掉,使用下面的命令

yum-config-manager --disable MySQL Cluster 7.5 Community

2.2.2、删除之前的版本

如果之前安装过mysql,可以使用下面的命令查看

yum list installed | grep mysql

我这里已经安装完了,所以有下面的依赖

可以使用下面的命令进行删除

yum -y remove mysql-community-client.x86_64

2.2.3、安装

使用下面的安装命令进行安装,

yum install mysql-community-server

如下图

进行安装即可。

安装完检查是否安装成功。

上图表明已经安装成功。

二、配置

刚安装好的mysql只能在本地访问,不具备远程访问的能力,所以这里要进行配置,由于这里使用yum进行默认安装,那么mysql安装在什么地方了那

2.1、mysql的安装位置

使用下面的命令

which mysqld

结果如下图

可以看到安装在了/usr/sbin目录下,

那么mysql的配置文件在什么地方那,

/usr/sbin/mysqld --verbose --help |grep -A 1 'Default options'     

如下图,

从上面可以看出首先读取/etc/my.cnf,然后是etc/mysql/my.cn 然后是/usr/etc/my.cnf  是按照这也一个顺序继续读取的,也就说在上面几个路径中只要有一个目录中存在my.cnf即可。我们先看在/etc/下是否存在

存在该文件,编辑该文件

该文件如下,

可以看到mysql的数据目录、pid等配置。记住log-error=/var/log/mysqld.log这个配置。好了下面去启动

2.2、启动mysql

使用下面的命令启动mysql

service mysqld start

可以看到已经启动成功。现在要进行登录

2.3、本地登录

现在服务已经启动了,mysql自带了本地客户端,可以使用客户端的方式启动,那么我们的账户和密码是什么那,不急,上边我们记住了log-error=/var/log/mysqld.log这也一个配置,这是mysql启动的日志,看下这个文件吧

从上面找到关键的一句,也就是mysql在启动的时候会给root一个临时的密码,我这里是0Q*_k1F.KFo9,使用该密码登录即可,

mysql -hlocalhost -uroot -p

可以看到已经成功登录,刚才提到该root的密码是临时的,那么现在就要对该密码进行修改。

2.4、修改root的临时密码

刚才已经登录成功,但是由于使用的是临时密码,所以什么操作都做不了,必须修改临时密码,

mysql> alter user root@localhost identified by 'wcj123!QAZ';

这里改成自己的密码即可。这样就完成了root密码的修改。使用exit命令退出后,使用新的密码登录即可。

2.5、增加远程登录的账户

mysql> create user 'root'@'%' identified by 'root';
//刷新权限
mysql> flush privileges;

添加了root的远程登录账户;

这样便可以使用root远程登录了。

2.6、使用navicat远程登录

使用navicat连接mysql,这里mysql的版本是8,在连接时出现下面的错误

在本地使用命令行的方式登录,执行下面的命令

mysql> use mysql;
mysql> alter user 'root'@'%' identified with mysql_native_password by 'wcj123!QAZ'; mysql> flush privileges;

然后再登录如下,

2.7、授权

从上图可以看到root账户的权限显然不是最大的,需要对其进行授权,

mysql> grant all privileges on *.* to 'root'@'%'  WITH GRANT OPTION;
mysql> flush privileges;

三、总结

本文记录了mysql的安装步骤,并抛出了一些问题及解决方案,文中遗留的问题,希望大家提出解决方案,感谢大家。

记录一次mysql的安装之旅的更多相关文章

  1. 记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb

    记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb 前段时间我个人Google服务器意外不能用,并且我犯了一件很低级的错误,直接在gcp讲服 ...

  2. 我在MySQL免安装版使用过程中遇到的问题记录【二】

    跟上次问题不一样!这次是重新安装MySQL免安装版,各种文件搞对了还是错了也不清楚. 现在是:下载完安装包之后,按照现在的下方的代码,创建一个my-default.ini文件并放入下代码: [mysq ...

  3. MYSQL的安装

    1.将mysql的安装文件放入虚拟机 2.搭建yum库 3.依次安装mysql的5个文件 最后一个server需要的依赖太多,所以用yum进行安装. 6.进行mysql的重置 mysql_instal ...

  4. MYSQL介绍安装及一些问题解决

    一.简介 MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发.发布并支持的.有以下特点: MySQL是一种数据库管理系统. MySQL是一种关联数据库管理系统. MySQ ...

  5. 第一章 数据库概述、MySQL的安装和配置

      第一章 数据库概述.MySQL的安装和配置   1.为什么要使用数据库 最早是纸质文件来存储数据 缺点:不易保存,占用空间大 计算机出现以后,采用软件来进行保存(excel) 缺点:容易损坏 文件 ...

  6. [转]mysql免安装版配置

    现在mysql有一个installer,相当于安装包管理器.包含mysql的各个组件,比如workbench,各个语言的connector.十分方便,不用就可惜了.实在没有必要下载zip版,自己配置. ...

  7. mac下mysql的安装

    由于最近需要布置mantis用来进行bug追踪,在此记录其过程. 由于PHP apache环境在Mac OS上是自带的,所以不需要另处下安装包,只需要简单配置一下即可. 首先打开终端输入命令: sud ...

  8. linux(Debian)下安装与MySql的安装、卸载、配置及使用

    参考资料:http://www.cnblogs.com/xusir/p/3334217.html 以下是简要记录. 一.安装 安装:apt-get install mysql-server mysql ...

  9. linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程

    1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ...

随机推荐

  1. 3、dns服务搭建

    3.1.dns服务简介: 1.DNS(Domain Name System)域名系统. 目前提供网络服务的应用使用唯一的32位的IP地址来标识,但是由于数字比较复杂.难以记忆,因此产生了域名系统(DN ...

  2. uniapp 微信小程序扫码处理

    1.view  代码 <view class="v-main-scan"> <uni-icons @click="scanCode" clas ...

  3. redis-cluster集群安装(windows)

    在此先奉上安装包(链接:https://pan.baidu.com/s/1QHYQPkYPuiRWhdj9APbjnw 提取码:jv8x ) 1. 安装ruby 下载 rubyinstaller-2. ...

  4. PHP严格类型检查模式

    前言 PHP默认情况下是弱类型校验模式,在php7下declare新增了strict_types指令,通过设置strict_types的值(1或者0),1表示严格类型校验模式,作用于函数调用和返回语句 ...

  5. linux~大文件相关操作的总结

    1.生成指定大小的文件 在当前目录下生成一个50M的文件: dd if=/dev/zero of=50M.file bs=1M count=50  truncate -s 2G ~/big.log.t ...

  6. C# 8.0和.NET Core 3.0高级编程 分享笔记一:C#8.0与NET Core 3.0入门

    在学习C#相关知识的过程中,我们使用Visual Studio Code来入门整个C#. 一.安装Visual Studio Core环境 通过https://code.visualstudio.co ...

  7. Linux必备命令 - 常用命令集

    默认进入系统,我们会看到这样的字符: [root@localhost ~]#,其中#代表当前是root用户登录,如果是$表示当前为普通用户.cd 命令 cd  /home  :解析:进入/home目录 ...

  8. Django 接口自动化测试平台

    本项目工程 github 地址:https://github.com/juno3550/InterfaceAutoTestPlatform 0. 引言 1. 登录功能 2. 项目 3. 模块 4. 测 ...

  9. 成功解决1406, “Data too long for column ‘txt‘ at row 1“

    这是因为数据库里该字段的数据类型所给的数据空间太小.MySQL将截断超过指定列宽度的任何插入值.为了让这个不报错,可以尝试切换MySQL模式不使用严格模式. SET @@global.sql_mode ...

  10. lombok之@Data

    在实体类的编写过程中,常常需要应用大量的get.set方法,需要写大量的重复代码,即有的工具有自动生成功能,当时也会使实体类中产生大量冗余代码,使得代码变,springboot为我们提供了相应注解可以 ...