1.下载mysql

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

将下载的mysql上传打linux

2.解压并重命名

[root@rsyncClient local]# tar -zxvf mysql-8.0.18-el7-x86_64.tar.gz -C /usr/local/ 

[root@rsyncClient local]# mv mysql-8.0.18-el7-x86_64/ mysql

3.在mysql根目录下创建data目录,存放数据

[root@rsyncClientopt]# cd /usr/local/mysql/

[root@rsyncClient mysql]# mkdir data

4.创建mysql用户组和mysql用户

[root@rsyncClient local]# groupadd mysql

[root@rsyncClient local]# useradd -g mysql mysql

5.改变mysql目录权限

[root@rsyncClient local]# chown -R mysql.mysql /usr/local/mysql/

6.初始化数据库

[root@rsyncClient mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql 
--datadir=/usr/local/mysql/data

7.配置mysql

在mysql/support-files创建文件my-default.cnf

[root@rsyncClient support-files]# cd /usr/local/mysql/support-files/
[root@rsyncClient support-files]# touch my-default.cnf

复制配置文件到/etc/my.cnf

[root@rsyncClient support-files]# cp -a ./my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y

编辑my.cnf

[client]
port=3306
socket=/tmp/mysql.sock [mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

8.配置环境变量

编辑 / etc/profile 文件

[root@rsyncClient mysql]# vim /etc/profile
#配置mysql环境变量
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
#让其生效
[root@rsyncClient mysql]# source /etc/profile
#看环境变量是否生效
[root@rsyncClient mysql]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

9.启动mysql

[root@rsyncClient mysql]# systemctl start mysqld

启动失败报错1:

Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.

解决方案:

[root@rsyncClient ~]# chown mysql:mysql -R /usr/local/mysql/

启动失败报错2:

[root@rsyncClient mysql]# service mysql start
/etc/init.d/mysql: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or
directory Starting MySQL. ERROR! The server quit without
updating PID file (/var/lib/mysql/rsyncClient.pid).
去这个目录下面查看 cat/usr/local/mysql/data/rsyncClient.err错误,对应的的解决,这里错误是因为my.conf配置错误

 启动失败报错3:

mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file:
No such file or directory
[root@rsyncClient init.d]# yum install libncurses.so.5
以这个为例,如果缺少这样依赖,直接用yum安装

启动失败报错4:

[root@rsyncClient data]# mysql -uroot -p
Enter password:
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded:
/usr/lib/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory
身份验证插件不能加载

解决办法:

[root@rsyncClient lib]# vim /etc/my.cnf
在这个[mysqld]下添加一行:
default_authentication_plugin=mysql_native_password
如果忘记了密码在加上:
skip-grant-tables(跳过密码验证)等设置了密码就去掉

10 使用systemctl命令启动关闭mysql服务

启动mysql服务:

#systemctl start mysqld.service

停止mysql服务

#systemctl stop mysqld.service

重启mysql服务

#systemctl restart mysqld.service

查看mysql服务当前状态

#systemctl status mysqld.service

设置mysql服务开机自启动

#systemctl enable mysqld.service

停止mysql服务开机自启动

#systemctl disable mysqld.service

11.mysql的基本操作

# 使用mysql客户端连接mysql
>/usr/local/mysql/bin/mysql -u root -p password
修改mysql的默认初始化密码

> alter user 'root'@'localhost' identified by 'root';
# 创建用户 CREATE USER '用户名称'@'主机名称' INDENTIFIED BY '用户密码'
> create user 'yehui'@'localhost' identified by 'yehui';
#给所有远程登录的进行授权,此方式已经报错了
> grant all privileges on *.*  to  'root'@'%'  identified by 'root'  with grant option;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'root'  with grant option' at line 1
# 修改root用户可以远程连接

> update mysql.user set host='%' where user='root';
 
# 授予权限 grant 权限 on 数据库.表 to '用户名'@'登录主机' [INDENTIFIED BY '用户密码'];

> grant replication slave on *.* to 'yehui'@'localhost';
#刷新

>flush privileges;

 12.防火墙问题

[root@rsyncClient data]# firewall-cmd --permanent --zone=public --add-port=3306/tcp  #允许访问
success
[root@rsyncClient data]# firewall-cmd --reload #重新加载
success

[root@rsyncClient data]# firewall-cmd --permanent --zone=public --query-port=3306/tcp  #查看是否开通访问权限
yes

linux下安装mysql8.0.x步骤的更多相关文章

  1. 实践:Linux下安装mysql8.0

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 一.下载mysql8.0安装包 1.在local创建mysql文件夹 cd /usr/local mkdir mysql cd mysql 2.使 ...

  2. centos 7下安装mysql-8.0

    本篇文章主要介绍在centos7 环境下安装mysql8.0并设置为开机自启. 安装步骤 1.配置yum源 首先在 https://dev.mysql.com/downloads/repo/yum/  ...

  3. linux下安装opencv3.0

    查版本gcc --version 需>4.8python 2.7+cmake --version numpy 以上是必须的 linux下安装opencv3.0<pre>https:/ ...

  4. Oracle Enterprise Linux 64-bit下安装apache-tomcat-7.0.53步骤

    測试环境:VMware Workstation v9.0.2软件中安装好Oracle Enterprise Linux 5.8 64-bit虚拟机 安装软件:jdk-7u40-linux-x64.rp ...

  5. centos7下安装mysql8.0.12及设置权限

    一.mysql版本介绍 mysql的官网为:https://www.mysql.com/ 在官网上可以看到多个版本,主要版本如下, 1.MySQL Community Server 社区版本,开源免费 ...

  6. Linux 下安装 mysql8

    1.下载mysql wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar 2. ...

  7. linux mint安装mysql-8.0.16

    1.使用通用二进制文件在Unix / Linux上安装MySQL 下载的文件:mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz 注意: 如果您以前使用操作系统本机程 ...

  8. CentOS7.X 下安装MySQL8.0(附文件)

    这是64位的安装包.如果需要32位的可以去官网下载哦.步骤一样 1 获取安装资源包 mysql-8.0.18-1.el7.x86_64.rpm-bundle.tar 链接: https://pan.b ...

  9. Centos7下安装MySQL8.0.23-小白的开始

    首先简单介绍一下什么叫MySQL: 数据库简而言之就是存储数据的仓库,为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上.是为了实现一定的目的,按照某种规则组织起来的数据的集合: MySQL ...

随机推荐

  1. c++复习笔记(3)

    这篇是各种琐碎的东西. 类的函数如果在类内部直接实现,则成为内联函数候选.类外部实现的方法,可以用inline声明,使其称为内联函数候选.但是函数是否可以成为内联函数,需要看编译器的行为.. 构造函数 ...

  2. 数据库MySQL——SQL语句(命令)

    SQL语句分类 DCL (Data Control Language):数据控制语言:用来管理用户及权限 DDL(Data Definition Language):数据定义语言:用来定义数据库对象: ...

  3. 嵌入式设备上卷积神经网络推理时memory的优化

    以前的神经网络几乎都是部署在云端(服务器上),设备端采集到数据通过网络发送给服务器做inference(推理),结果再通过网络返回给设备端.如今越来越多的神经网络部署在嵌入式设备端上,即inferen ...

  4. HHKB Programming Contest 2020【ABCE】

    比赛链接:https://atcoder.jp/contests/hhkb2020/tasks A - Keyboard 代码 #include <bits/stdc++.h> using ...

  5. KMP浅谈

    关于KMP ​ KMP其实是三个人名字的缩写,因为是他们同时发现的(大佬惹不起); ​ KMP作为CSP考点,主要亮点是其优秀的匹配复杂度,而且消耗空间小,比起hash虽然有些局限性,但是因为其正确率 ...

  6. c语言实现n!算法

    最近一面学习数据结构,一面在做些c语言的题目.这个题目前些天碰到,和同学讨论了下.于是就用c语言实现n!(n=10000) 1 #include<stdio.h> 2 #define MA ...

  7. Codeforces Round #680 (Div. 2, based on Moscow Team Olympiad) D. Divide and Sum (思维,数学,逆元)

    题意:有一个长度为\(2n\)数组,从中选分别选\(n\)个元素出来组成两个序列\(p\)和\(q\),(\(p\)和\(q\)中只要有任意一个元素在\(a\)的原位置不同,就算一个新的情况),选完后 ...

  8. Linux 查看系统日志 ,查看服务日志

    journalctl 查看系统日志参数 -f 表示日志跟中-u 指定的是 unit 指定要查看的服务日志,如果不指定的话会显示所有服务的日志 journalctl -f -u 要查看的服务日志 jou ...

  9. 梨子带你刷burp练兵场(burp Academy) - 服务器篇 - Sql注入 - SQL injection UNION attack, determining the number of columns returned by the query

    目录 SQL injection UNION attack, determining the number of columns returned by the query SQL injection ...

  10. Playbook 角色(Roles) 和 Include 语句

    简介 当我们刚开始学习运用 playbook 时,可能会把 playbook 写成一个很大的文件,到后来可能你会希望这些文件是可以方便去重用的,所以需要重新去组织这些文件. Include 语句 基本 ...