在Centos7.6 上安装mysql

ps:一般mysql安装后会在/var/log/下面生成一个mysqld.log文件,如果遇到启动不了或者其他问题,基本都可以在这个log文件里面找到错误原因

1.下载mysql和安装

1.1 有梯子,可以使用下面的方法

二、先下载Linux下的Mysql包,打开Mysql官网
https://www.mysql.com/
点击DOWNLOAD,进入 https://www.mysql.com/downloads/


到页面最底部,点击社区版 community(GPL)Downloads>>,进入 https://dev.mysql.com/downloads/


继续点击社区版服务器,进入
https://dev.mysql.com/downloads/mysql/


三、选择版本及系统,点击右侧的Download,进入页面


四、最后开始下载


五、下载完成后的包列表,选择版本不同,后面的版本号可能不同,这个没有关系
陈列如下

mysql-community-client-8.0.16-2.el7.x86_64.rpm
mysql-community-common-8.0.16-2.el7.x86_64.rpm
mysql-community-devel-8.0.16-2.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.16-2.el7.x86_64.rpm
mysql-community-libs-8.0.16-2.el7.x86_64.rpm
mysql-community-libs-compat-8.0.16-2.el7.x86_64.rpm
mysql-community-server-8.0.16-2.el7.x86_64.rpm
mysql-community-test-8.0.16-2.el7.x86_64.rpm

此方法来自https://www.cnblogs.com/lukefan/p/10406522.html

1.2 没有梯子,请使用下面的方法

一、获取mysql YUM源   

打开网址:https://dev.mysql.com/downloads/repo/yum/,选择对应linux版本


点击“No thanks, just start my download.”,进行下载



将下载地址复制,得到rpm包的地址



此方法来源https://www.cnblogs.com/lemon-feng/p/11233227.html

这两种方法的区别是是否要在服务器上下载后面的安装包,按照后面的方法,服务器下载时网速渣的要命(感谢长城),但是可以断点,下次继续下载

在后续安装的时候,可以按照选择的不同办法进行安装,其实都是大同小异,在安装完成之后,建议采用下面的办法进行初始化和配置

2.初始化和配置

顺序执行以下语句
mysqld
mysqld --initialize --user=mysql
mysqld --initialize --lower-case-table-names=1 #此设置是设置大小写是否敏感,可前往https://blog.csdn.net/jesseyoung/article/details/40617031查看是否需要设置
#ps:在mysql8中,大小写敏感设置需要在初始化的时候进行设置,后面在配置中进行更改是无效的,所以慎重选择,不然就需要重装。。。。
查看初始密码:
cat /var/log/mysqld.log  #或者 cat /var/log/mysqld.log | grep password 或者文件系统进入/var/log/mysqld.log进行查看

启动mysql服务:

service mysqld start

查看一下服务状态是否启动:

service mysqld status

登入数据库:

mysql -uroot -p

输入或者复制进刚才的随机密码

下面会出现一个输入命令的地方

值得注意的是,在mysql中,每一个执行语句后面要加上一个英文分号,不然不会执行,如果忘记加了,可以在下面的">"后面输入英文分号然后回车,例如

设置远程访问授权


mysql -u root -p         //登录数据库,如果已经登入,不需要再执行

use mysql                  //进入mysql数据库,如果已经进入,不需要再执行
select Host,User from user; //查看可以访问数据库的ip
select 'host' from user where user='root';

update user set host = '%' where user ='root'; //将默认的localhost更新为%,%是默认全部可以访问,localhost只是本地可访问,还可以指定公网ip grant all privileges on *.* to 'root'@'%' with grant option; flush privileges;

输入exit退出,打开防火墙开放3306端口,此步骤不在mysql里面执行

如果没有开启防火墙,则输入:systemctl start firewalld  开启

输入下面命令,开放3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

配置默认编码为UTF-8,此步骤不在mysql里面执行

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:

(这个步骤可以使用vim或者xftp进行修改)

character_set_server=utf8

init_connect='SET NAMES utf8'

编辑保存完重启mysql服务: systemctl restart mysqld

查看下编码:mysql> show variables like '%character%';

此时,外部如果还是不能连接上数据库(可查看https://www.cnblogs.com/zzqit/p/10095597.html),首先查看安全规则组,看是否打开了3306端口

更改密码

更改密码,其实就是更改上面user对应的密码,举例:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

这一句话,里面root对应上面的user列,localhost对应host列

如果我这句话写成:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'TiLaMiSu13213#13';

就会报以下错误:ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%'

,意思就是找不到对应的user和host,无法进行密码设置,所以这个地方要对应起来才可以

我们如果想更改远程连接rootr的密码,就把上面这句话改成

ALTER USER 'rootr'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

这个地方需要自己去设置修改,别直接复制粘贴

设置开机启动:
在/usr/lib/systemd/system/文件夹下创建一个mysql.service,然后进行编辑

#ExecStart 目录可在执行which mysqld 进行查询,注意不要少d

[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target [Install]
WantedBy=multi-user.target [Service]
User=root
Group=mysql
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000

保存后,然后依次执行


systemctl daemon-reload #重新加载服务配置文件
systemctl start mysql #启动mysql

systemctl enable mysqld #设置开机启动

systemctl status mysql #查看mysql的状态

linux 学习 mysql安装到连接的更多相关文章

  1. Linux学习—mysql安装配置及远程连接

    安装前准备 1.检查是否已经安装过mysql 执行命令 [root@localhost /]# rpm -qa | grep mysql  从执行结果,可以看出我们已经安装了mysql-libs-5. ...

  2. LINUX学习-Mysql安装

    一.安装环境 操作系统CentOS6.8 关闭SeLinux和iptables防火墙 二.网络yum源 将下面的软件下载到  /etc/yum.repos.d/   的目录下 官方基础:http:// ...

  3. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  4. Linux下MySQL安装及配置

    Linux下MySQL安装及配置 安装MySQL Ubuntu系统中,直接使用apt install的方式去安装MySQL的服务端和客户端,MySQL的客户端必须安装,否则无法通过命令连接并操作MyS ...

  5. Linux服务器MySQL安装

    Linux服务器MySQL安装 1. MySQL官网下载如图: 2. 安装MySQL [root@iZ2zebb0428roermd00462Z /]# rpm -ivh https://dev.my ...

  6. Linux 数据库MySql 安装配置教程!

    本文价绍Linux 相关mysql 安装和配置以及基本连接测试 1官网下载安装mysql-server # wget http://dev.mysql.com/get/mysql-community- ...

  7. Linux下MySQL安装和配置

    --Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...

  8. Linux下Mysql安装(RPM安装)

    1. 首先检查机器里是否已经存在MySQL $ rpm -qa | grep mysql 2. 去官网下载相应的rpm包:https://dev.mysql.com/downloads/mysql/ ...

  9. linux下MySQL安装及设置

    转自:http://www.entage.net/1/viewspace-25420 1. 关于本文    本文将以MySQL 5.0.51为例,以CentOS 5为平台,讲述MySQL数据库的安装和 ...

随机推荐

  1. 在博客文章中使用mermaid 定义流程图,序列图,甘特图

    概述 Mermaid(美人鱼)是一套markdown语法规范,用来在markdown文档中定义图形,包括流程图.序列图.甘特图等等. 它的官方网站是 https://mermaid-js.github ...

  2. 透过实例demo带你认识gRPC

    摘要:gRPC是基于定义一个服务,指定一个可以远程调用的带有参数和返回类型的的方法.在服务端,服务实现这个接口并且运行gRPC服务处理客户端调用. 本文分享自华为云社区<gRPC介绍以及spri ...

  3. 亿信BI——EXCEL组件使用流程

    功能模块: 用户点击"excel输入"模块进行excel文件导入操作,excel导入页面的顶部导航栏包括基本属性.文件设置.格式设置和字段列表四部分. 基础属性: 在基本属性模块部 ...

  4. [python][flask] Flask 图片上传与下载例子(支持漂亮的拖拽上传)

    目录 1.效果预览 2.新增逻辑概览 3.tuchuang.py 逻辑介绍 3.1 图片上传 3.2 图片合法检查 3.3 图片下载 4.__init__.py 逻辑介绍 5.upload.html ...

  5. Node.js躬行记(21)——花10分钟入门Node.js

    Node.js 不是一门语言,而是一个基于 V8 引擎的运行时环境,下图是一张架构图. 由图可知,Node.js 底层除了 JavaScript 代码之外,还有大量的 C/C++ 代码. 常说 Nod ...

  6. 面试突击54:MySQL 常用引擎有哪些?

    MySQL 有很多存储引擎(也叫数据引擎),所谓的存储引擎是指用于存储.处理和保护数据的核心服务.也就是存储引擎是数据库的底层软件组织.在 MySQL 中可以使用"show engines& ...

  7. 看看CabloyJS是如何实现编辑页面脏标记的

    应用场景 我们在使用Word.Excel时,当修改了内容之后在标题栏会显示脏标记,从而可以明确的告知用户内容有变动.此外,如果在没有保存的情况下关闭窗口,系统会弹出提示框,让用户选择是否放弃修改 那么 ...

  8. CabloyJS 基于 EggJS 实现的模块编译与发布

    背景 现在,EggJS被许多开发团队所采用.有的团队基于商业知识产权的考量,往往会提一个问题:是否可以把EggJS当中的代码编译打包,然后再把代码丑化? 模块编译的机制 EggJS为何不能便利的实现编 ...

  9. Python列表推导式,字典推导式,元组推导式

    参考:https://blog.csdn.net/A_Tu_daddy/article/details/105051821 my_list = [ [[1, 2, 3], [4, 5, 6]] ] f ...

  10. Dev C++编写C/C++程序 出现[Error] ld returned 1 exit status报错分析及解决

    debug系列第一弹,不知道大家写程序的时候是不是都遇到过如题的报错. 我本人是经常遇到这行熟悉的令人不知所措的报错,可能是我太笨了 有时候百度无果也差不到原因,那就汇总一下目前我遇到的情况吧--持续 ...