ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

实战--Alibaba Cloud Linux 3 在线安装 mysql 8.0.21

2021-11-18 17:03:15  阅读:213  来源: 互联网

标签:8.0 dnf img -- 数据库 https mysql png


一、整体思路

主要内容:使用dnf 在线安装

  1. 删除已有的mysql
  2. 使用dnf在线安装
    1. 确认本地是否有mysql的rpm包以及对应的版本信息
    2. 使用dnf命令安装
  3. 配置数据库参数
    1. 查找mysql的配置文件
    2. 修改my.cnf
  4. 启动数据库服务
  5. 初始化数据库
  6. 配置数据库的连接信息
    1. 创建用户
    2. 配置用户的权限
    3. 配置navicat客户端的远程连接

特别注意:

  1. 在启动数据库服务之前,一定要先配置my.cnf。有些参数配置,一旦第一次启动服务后,就无法再次配置了。比如 大小写敏感参数(lower_case_table_names)!!!

二、系统环境

# 查看系统版本
cat /etc/redhat-realse

![1637211341(1).png](https://www.icode9.com/i/ll/?i=img_convert/654d16c45d33b9aec636df6e37006d9f.png#clientId=u2c7b2728-c12a-4&from=paste&height=58&id=u1337f059&margin=[object Object]&name=1637211341(1).png&originHeight=51&originWidth=628&originalType=binary&ratio=1&size=4657&status=done&style=none&taskId=u6e5d2463-d540-402a-8940-99a38cf121b&width=709)

三、具体操作

1、检查并清除以前的mysql相关文件

提醒:这是很重要的工作,一定要不能略过。

  1. 查看并卸载mysql的安装包。
    1. 执行命令:dnf list installed | grep mysql 。或者使用对应的rpm命令。 如果有内容,则使用 dnf remove 包名 卸载。
    2. 执行命令:find / -name mysql 。如果有内容,则使用 rm -rf 文件路径  删除文件。

![1637216748(1).jpg](https://www.icode9.com/i/ll/?i=img_convert/856c1c81b23369aa44acaf90ef8a9da3.png#clientId=u2c7b2728-c12a-4&from=paste&height=80&id=qc2aT&margin=[object Object]&name=1637216748(1).jpg&originHeight=105&originWidth=912&originalType=binary&ratio=1&size=10473&status=done&style=none&taskId=u99889adc-fdb8-437e-900c-8ff6d4a8f6e&width=699)
![1637217900(1).png](https://www.icode9.com/i/ll/?i=img_convert/2e61862a5fcab92f2390a29f886371ca.png#clientId=u2c7b2728-c12a-4&from=paste&height=223&id=u53011989&margin=[object Object]&name=1637217900(1).png&originHeight=258&originWidth=810&originalType=binary&ratio=1&size=15736&status=done&style=none&taskId=ufb2df4cc-b6d1-416c-92da-06096dd3ee8&width=699)

拓展:

1. dnf list installed  表示查询所有安装过的rpm包 
2. grep mysql  表示使用正则表达式查询包含关键字mysql的内容
3. 分别开repository 和 package的关系。 rpm包包含在repository中,这也是 dnf repolist 和 dnf list 的区别
4. whereis、which、find、location的区别和用法  https://www.cnblogs.com/kex1n/p/5233821.html
5. rpm ,yum ,dnf 之间的区别和关系  https://www.ywnz.com/linux/6252.html 

2、使用dnf安装

查找系统是否包含mysql的rpm包。
  1. 查找系统是否包含mysql的rpm包。http://ipcmen.com/dnf
    1. 如果没有mysql-server的rpm包,也可以去官网查找对应的rpm地址,然后安装。
dnf search mysql   //查询包含mysql关键字的rpm
  1. 查看具体的mysql server的版本信息
dnf info mysql-server
  1. 安装
dnf install -y mysql-server

拓展:

在系统的rpm包中,一定要区分 mysql 和 mysql-server 
Linux系统-RPM包详解  https://www.cnblogs.com/luodenglin/p/11888751.html

![1637218964(1).png](https://www.icode9.com/i/ll/?i=img_convert/a0c76537af87177c47f12d73b5c906e8.png#clientId=u2c7b2728-c12a-4&from=paste&height=689&id=u25529644&margin=[object Object]&name=1637218964(1).png&originHeight=751&originWidth=845&originalType=binary&ratio=1&size=78647&status=done&style=none&taskId=u6ceb8c49-c558-433b-afcc-03e7c7341d7&width=775.5)
![1637219262(1).png](https://www.icode9.com/i/ll/?i=img_convert/5ce65f747a5c4c5e2e66b681c5a7f2a6.png#clientId=u2c7b2728-c12a-4&from=paste&height=391&id=udbaf8424&margin=[object Object]&name=1637219262(1).png&originHeight=389&originWidth=744&originalType=binary&ratio=1&size=24259&status=done&style=none&taskId=u337a6415-7c8a-47d7-8885-cfa81bb000a&width=748)
![1637219566(1).png](https://www.icode9.com/i/ll/?i=img_convert/3bc396e0b894f85dc6e3a807b6770593.png#clientId=u2c7b2728-c12a-4&from=paste&height=416&id=ub945947f&margin=[object Object]&name=1637219566(1).png&originHeight=649&originWidth=1165&originalType=binary&ratio=1&size=188609&status=done&style=none&taskId=u934e3236-df31-4da2-8a71-0f4fc6a9341&width=746.5)

3、配置数据库参数

  1. 查找数据库的默认配置文件的读取位置
mysql --help | grep my.cnf

#说明,按优先级加载my.cnf

![image.png](https://www.icode9.com/i/ll/?i=img_convert/522834659ee7c4bf1a2fb04d7056e31f.png#clientId=u2c7b2728-c12a-4&from=paste&height=121&id=u1fc6ee8c&margin=[object Object]&name=image.png&originHeight=97&originWidth=601&originalType=binary&ratio=1&size=9246&status=done&style=none&taskId=ufc4519cc-81e7-4590-86db-98283ce8317&width=747.5)

  1. 修改my.cnf
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d                

[mysqld]

#数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)
character-set-server = utf8mb4
 
#数据库字符集对应一些排序等规则,注意要和character-set-server对应
collation-server = utf8mb4_general_ci
 
#设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'
 
#是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
 
#最大连接数
max_connections = 400
 
#最大错误连接数
max_connect_errors = 1000

#MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
#MySQL默认的wait_timeout  值为8个小时, interactive_timeout参数需要同时配置才能生效
interactive_timeout = 1800
wait_timeout = 1800

拓展:

mysql配置文件的读取:
1. 启动服务时,使用指定的配置文件
  a. 启动命令 mysqld --defaults-file=/etc/my.cnf --user=root
  b. 查看是否指定文件命令 ps aux|grep mysql|grep 'my.cnf'
2. 默认读取默认的my.cnf配置文件
  a. 查询对应的默认文件夹  mysql --help|grep 'my.cnf'
  b. 在my.cnf中,还可以通过包含其他配置文件的路径的方式,调用另外的配置

4、启动数据库服务同时设置开机自启动

systemctl enable --now mysqld

拓展:

systemctl 相关:

  1. Systemctl能够管理的单元包括:服务(.service),挂载点(.mount),套接口(.socket)和设备(.device)作为单元。
  2. 单位的目录:/usr/lib/systemd/system(Centos)或/etc/systemd/system(Ubuntu)
  3. systemctl命令兼容了service,即systemctl也会去/etc/init.d目录下,查看,执行相关程序。
  4. Linux 服务管理有两种方式 service和systemctl

systemctl 命令完全指南
linux中systemctl详细理解及常用命令

5、初始化数据库

mysql_secure_installation

依次需要判断的内容:
	配置验证密码组件,输入 y 
  配置密码验证等级,可以输入 0 、1 、2 ,分别对应三个等级。
  输入密码,需要输入两次,页面上不会显示出你输入的密码,输入完之后按回车即可
  确认使用该密码,输入 y
  是否移除匿名用户,输入 y
  是否禁止root用户远程登录  如果需要远程登录,请输入 n
  是否移除测试数据库,输入 y
  是否重载权限表,输入 y

6、配置数据库的连接信息

mysql -uroot -p   通过新密码再次登陆
create user 'root'@'%' identified by '新密码';    授予远程访问权限
grant all privileges on *.* to 'root'@'%';  授予远程访问权限
flush privileges;  授予远程访问权限
alter user 'root' @'%' identified with mysql_native_password by '新密码'; 授权mysql_native客户端工具

说明

#指定某个用户关于具体表的权限
grant all privileges on 数据库名.* to '用户名'@'%';  

特别注意:

_ 如果还是无法通过客户端远程连接到数据库,可以检查一下防火墙是否禁用3306端口。另外,新买的阿里云服务器,要主要是否配置对应的安全组策略。_

![](https://www.icode9.com/i/ll/?i=img_convert/0a79dec388407d096947195a8a423b5a.png#from=url&id=br9P1&margin=[object Object]&originHeight=232&originWidth=810&originalType=binary&ratio=1&status=done&style=none)![](https://www.icode9.com/i/ll/?i=img_convert/670e97ae41a24ac78f992ed837f3a2a6.png#from=url&id=XJATS&margin=[object Object]&originHeight=232&originWidth=810&originalType=binary&ratio=1&status=done&style=none)

标签:8.0,dnf,img,--,数据库,https,mysql,png
来源: https://blog.csdn.net/zzulishulei/article/details/121404906

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有