Linux下安装mysql8.0.20

Linux下安装mysql8.0.20文章目录Linux下安装mysql8.0.20安装前准备安装Linux下安装mysql8.0.20安装前准备1.下载地址:2.检测是否安装过mysql#检测是否安装过mysqlrpm-qa|grepmysql#删除命令rpm-e–nodepsmysql-libs-5.1.73-5.el6_6.x86_643.查询所有Mysql对应的文件夹(删除)whereismysqlrm-rf/usr/lib64/mysql/usr/share/mysqlfin

大家好,又见面了,我是你们的朋友全栈君。

Linux下安装mysql8.0.20

安装前准备

1. 下载地址

https://dev.mysql.com/downloads/mysql/

2. 检测是否安装过mysql

# 检测是否安装过mysql
rpm -qa | grep mysql
# 删除命令
rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

3. 查询所有Mysql对应的文件夹(删除)

whereis mysql
rm -rf /usr/lib64/mysql /usr/share/mysql
find / -name mysql
rm -rf /etc/selinux/targeted/active/modules/100/mysql

在这里插入图片描述

4. 检查mysql用户组和用户是否存在,如果没有,则创建

cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
groupadd mysql
useradd -r -g mysql mysql

在这里插入图片描述

安装

1. 下载、上传、解压安装包

官网下载,xftp上传

# 解压
tar -xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

在这里插入图片描述

2. 将解压的文件移动到/usr/local下,并重命名为mysql

# 移动位置并重命名
mv /mysql-8.0.20-linux-glibc2.12-x86_64 /usr/local/mysql

在这里插入图片描述

3. 进入/usr/local/mysql目录下,创建data文件夹,并授权

cd /usr/local/mysql/
# 创建文件夹
mkdir data
# 给文件夹授权
chown -R root:root /usr/local/mysql
# 给文件夹授权
chown -R mysql:mysql /usr/local/mysql/data/

在这里插入图片描述

4. 初始化数据库,并会自动生成随机密码,记下等下登陆要用

# 初始化数据库,mysql的bin目录下的mysqld命令
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

临时密码:root@localhost:后面的那串代码
在这里插入图片描述
补充说明:
此步可能会出错:

出现该问题首先检查该链接库文件有没有安装使用,命令进行核查。
并安装文件,安装完成之后重新初始化。

# 检测命令
rpm -qa|grep libaio
# 
yum install  libaio-devel.x86_64
# 
yum -y install numactl

在这里插入图片描述

5. cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

复制过去,其实也就是空白页,一开始没有my-default.cnf这个文件,可以用touch my-default.cnf命令创建一个,并配置权限

chmod 777 ./my-default.cnf 

在这里插入图片描述

6. 配置my.cnf

vi /etc/my.cnf
[mysqld]
 
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
 
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
 
# These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
log-error = /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
port = 3306
#lower_case_table_names = 1
# server_id = .....
# socket = .....
#lower_case_table_names = 1
max_allowed_packet=32M
default-authentication-plugin = mysql_native_password
#lower_case_file_system = on
#lower_case_table_names = 1
log_bin_trust_function_creators = ON
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

如果后期mysql运行报错,可以直接到log-error = /usr/local/mysql/data/error.log目录下直接查看错误日志
命令:cat /usr/local/mysql/data/error.log

7. 开机自启,进入/usr/local/mysql/support-files进行设置

cd support-files/
cp mysql.server /etc/init.d/mysql 
chmod +x /etc/init.d/mysql

在这里插入图片描述

8. 注册服务并检测

  • 注册
chkconfig --add mysql

如果命令没有,在需要处理chkconfig

rpm -aq |grep chkconfig
export PATH=/sbin:$PATH
chkconfig
echo $PATH
PATH="$PATH":/sbin
echo $PATH
  • 检测
chkconfig --list mysql

在这里插入图片描述

9. etc/ld.so.conf要配置路径,不然报错

vim /etc/ld.so.conf
 
# 添加如下内容:
/usr/local/mysql/lib

在这里插入图片描述

10. 配置环境变量

# 配置环境变量
vim /etc/profile

# 添加如下内容:
# MYSQL ENVIRONMENT
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib

# 系统重新加载文件,记得一定要
source /etc/profile

在这里插入图片描述

11. 登陆,修改密码

密码:第4步初始化数据库随机生成得密码,输入密码不显示。

[root@VM_0_3_centos support-files]# service mysql start
Starting MySQL.. SUCCESS! 
[root@VM_0_3_centos support-files]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 82
Server version: 8.0.20

Copyright (c) 2000, 2020, 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> alter user 'root'@'localhost' identified by 'kid+1412';
Query OK, 0 rows affected (0.01 sec)

mysql> 

在这里插入图片描述

12. 开启Navicat远程连接

# 登录
[root@VM_0_3_centos support-files]# mysql -uroot -p 
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2582
Server version: 8.0.20 MySQL Community Server - GPL

Copyright (c) 2000, 2020, 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数据库
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
# 查看用户信息
mysql> select host, user, authentication_string, plugin from user;
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host      | user             | authentication_string                                                  | plugin                |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root             | $A$005$=!..iRO=k:x_>qiFtXTYJmwgur/2pJH1mfk26FBL.1YZOC.YcBw8auuFFM0 | caching_sha2_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
4 rows in set (0.00 sec)
# 更新root信息
mysql> update user set host = '%' where user = 'root';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0
# 授权root用户可以远程登陆,失败
mysql> GRANT ALL ON *.* TO 'root'@'%';
ERROR 1410 (42000): You are not allowed to create a user with GRANT
# 立即生效,重新授权
mysql> flush privileges; 
Query OK, 0 rows affected (0.02 sec)
# 授权root用户可以远程登陆
mysql> GRANT ALL ON *.* TO 'root'@'%';
Query OK, 0 rows affected (0.02 sec)
# 立即生效
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
# 
mysql> alter user 'root'@'%' identified with mysql_native_password by 'kid+1412';
Query OK, 0 rows affected (0.01 sec)
# 立即生效
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
# 退出
mysql> exit
Bye

13.navicat连接成功

在这里插入图片描述

Mysql8.0.20 创建用户并授权

https://blog.csdn.net/qq_37040886/article/details/107300838

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133375.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • XMLElement,XMLDocument 用法「建议收藏」

    XMLElement,XMLDocument 用法「建议收藏」来源http://www.cr173.com/html/23515_1.html一前言先来了解下操作XML所涉及到的几个类及之间的关系 如果大家发现少写了一些常用的方法,麻烦在评论中指出,我一定会补上的!谢谢大家*1XMLElement主要是针对节点的一些属性进行操作*2XMLDocument主要是针对节点的CUID操作*3XMLNode为抽象

    2022年6月19日
    43
  • redis如何设置定时过期_redis 设置过期时间[通俗易懂]

    redis如何设置定时过期_redis 设置过期时间[通俗易懂]1、设置过期时间功能:即对存储在redis数据库中的值可以设置一个过期时间。作为一个缓存数据库,这是非常实用的。如我们一般项目中的token或者一些登录信息,尤其是短信验证码都是有时间限制的,按照传统的数据库处理方式,一般都是自己判断过期,这样无疑会严重影响项目性能。我们setkey的时候,都可以给一个expiretime,就是过期时间,通过过期时间我们可以指定这个key可以…

    2022年9月26日
    3
  • django 异常处理_migrate previous

    django 异常处理_migrate previous前言在讲解如何解决migrate报错原因前,我们先要了解migrate做了什么事情,migrate:将新生成的迁移脚本。映射到数据库中。创建新的表或者修改表的结构。问题1:migrate怎么判断哪

    2022年7月29日
    6
  • java基础API

    java基础APIJava常用类库1.API(1)ApplicationProgrammingInterface,应用程序接口。是一些预先定义的类和接口,或指软件系统不同组成部分衔接的约定。(2)API说明文档API文档查看方式:第一步选择包,第二步,选择类或接口,第三步查看类和接口的使用说明,右边的区域。右边的区域分为五块,分别为类的定义和功能介绍、属性的介绍、构造器的介绍、构造器的介绍、方法的列表、每个方法的使用详细说明。2、java.lang包(1)这是我们api中最基础的一个包(2)该包下面的

    2022年7月9日
    21
  • 一个简单的WPF字体选择器实现

    很久没有写博客了。这是放暑假中的第一篇博客,以后会多多更新!!!这就是我写的一个字体选择器,界面如下:本程序用到的技术比较简单,仅仅是用了Font类的几个方法和数据绑定而已。首先建一个四行两列

    2021年12月27日
    40
  • 校园网络总体规划设计方案_校园网的使用与规划

    校园网络总体规划设计方案_校园网的使用与规划目录一、项目概述3二、设计要求4(一)网络部分的总体要求4(二)系统部分的总体要求4(三)网络安全设计4三、设计原则6四、设计目标6五、网络拓扑结构设计7(一)布线结构需求7(二)拓扑结构的选择7六、网络技术选择9(一)VLAN技术9(二)IP通信技术10(三)使用适应性的路由协议10(四)访问控制技术11七、网络设备选型原则12(一)交换机的选择12(二)路由器的选择13(三)防火墙14(四)服…

    2022年10月5日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号