服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - Linux环境下安装MySQL8.0的完整步骤

Linux环境下安装MySQL8.0的完整步骤

2022-08-05 15:46惜缘的缘 Mysql

数据库想必大家都很熟悉,但是要在服务器上自己来安装数据库,还是会出现不少的问题,下面这篇文章主要给大家介绍了关于在Linux环境下安装MySQL8.0的完整步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下

 

前言

搞了一台云服务器,首先要干的活就是得安装数据库,在Windows下安装不用说,傻瓜式操作,在Linux上安装少说要记录一下。

我使用的是XShell7 ssh 连接工具访问的Linux,其他工具的用法和命令都一样,界面如下:

Linux环境下安装MySQL8.0的完整步骤

在这里我使用的不是root用户登录的,所以先切换到root用户,命令:su

 

第一步:下载安装配置

1.切换到 /usr/local/

cd /usr/local/

2.创建mysql文件夹

mkdir mysql

3.切换到mysql文件夹下

cd mysql

4.下载mysql8.0安装包

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

等待下载成功

Linux环境下安装MySQL8.0的完整步骤

5.解压mysql8.0安装包

tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 

Linux环境下安装MySQL8.0的完整步骤

6.重命名解压出来的文件夹,这里改成mysql-8.0

mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0

7.. /use/local/mysql-8.0文件夹下创建data文件夹 存储文件

mkdir data

8.分别创建用户组以及用户和密码(如果提示已存在说明之前有创建过了)

  groupadd mysql
  
  useradd -g mysql mysql

9.授权刚刚新建的用户

chown -R mysql.mysql /usr/local/mysql/mysql-8.0

chmod 750 /usr/local/mysql/mysql-8.0/data -R

10.配置环境,编辑/etc/profile文件

注意:这里有一个坑,在配置完环境变量后,需要执行sourc /etc/profile命令,使配置文件生效

vim /etc/profile
#--------------------------
#点击键盘上的i键,进入输入模式,在配置文件最后增加一行:
#--------------------------
export PATH=$PATH:/usr/local/mysql/mysql-8.0/bin:/usr/local/mysql/mysql-8.0/lib
#添加完成后,按Esc键退出输入模式,进入命令模式,输入:wq,保存并退出
#然后在输入cat /etc/profile  查看是否保存成功,效果如下:↓↓↓↓↓↓

Linux环境下安装MySQL8.0的完整步骤

11.编辑my.cnf文件

vi /etc/my.cnf
[mysql]
default-character-set=utf8mb4
[client]
#port=3306
socket=/var/lib/mysql/mysql.sock

[mysqld]
#port=3306
#server-id=3306
user=mysql
general_log = 1
general_log_file= /var/log/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql/mysql-8.0
datadir=/usr/local/mysql/mysql-8.0/data
log-bin=/usr/local/mysql/mysql-8.0/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql/mysql-8.0/data
innodb_log_group_home_dir=/usr/local/mysql/mysql-8.0/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/mysql-8.0/data/mysql.log
pid-file=/usr/local/mysql/mysql-8.0/data/mysql.pid

#
# include all files from the config directory

12.切换到/usr/local/mysql/mysql-8.0/bin目录下

cd bin

13.初始化基础信息,得到数据库的初始密码(在/usr/local/mysql/mysql-8.0/bin目录下执行)

./mysqld --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql//mysql-8.0/data/ --initialize
#初始化完成后,复制最后的初始密码,保存下来后面需要(这一步好像并没有用)
#igTn=3j-

14.复制 mysql.server 文件,在/usr/local/mysql/mysql-8.0目录下执行

cp -a ./support-files/mysql.server /etc/init.d/mysql 

cp -a ./support-files/mysql.server /etc/init.d/mysqld

15.赋予权限

chown 777 /etc/my.cnf

chmod +x /etc/init.d/mysql

chmod +x /etc/init.d/mysqld

16.检查一下/var/lib/mysql是否存在,否则进行创建

mkdir /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql/ 

17.启动数据库,有SUCCESS字眼说明MySQL安装完成

service mysql start 
#出现SUCCESS 说明启动成功,效果图如下:

Linux环境下安装MySQL8.0的完整步骤

ps:

如果发现启动失败,可以先查看data里面的mysql.log,如果有提示3306这样的字样,第一个想到的应该是端口被占用,使用lsof -i:端口号,查看是哪个PID(进程号)占用了该端口,然后使用kill PID(进程号)杀掉进程,重新执行service mysql start

 

第二步:修改密码,并设置远程连接(为了可以在别的机器下面连接该mysql)

在这一步最开始就浪费了我好大的时间。如果用之前的初始密码登录,可能会出现以下的错误:

Linux环境下安装MySQL8.0的完整步骤

在这一步的时候,研究了好久,记录一下处理过程:

  • 在 vim /etc/my.cnf文件中,在[mysqld]的段中加上一句:skip-grant-tables --跳过密码验证
  • 然后保存退出,重启MySQL服务
  • 然后输入mysql -uroot -p 敲两下回车,进入mysql
  • USE mysql ; --进入数据库
  • 在mysql8.0 中,这个更新语法不能用UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ; 使用这个:ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
  • 最后按照下边的步骤进行就可以了。

1.修改数据库root账号的密码,并设置可以远程访问(因为root默认是不能远程访问的)

ALTER USER "root"@"localhost" IDENTIFIED WITH mysql_native_password BY "新密码";

2.执行flush privileges; 使密码生效

flush privileges;#刷新权限

3.选择数据库

use mysql;

4.再修改远程连接并生效

mysql> create user "root"@"%" identified by  "password";
Query OK, 0 rows affected (0.03 sec)
 
mysql> grant all privileges on *.* to "root"@"%" with grant option;
Query OK, 0 rows affected (0.01 sec)
 
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

5.执行提交命令,搞定!

flush privileges;#刷新权限

 

总结

到此这篇关于Linux环境下安装MySQL8.0的文章就介绍到这了,更多相关Linux安装MySQL8.0内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文地址:https://blog.csdn.net/qq_41760620/article/details/124804090

延伸 · 阅读

精彩推荐
  • MysqlMySQL入门(五) MySQL中的索引详讲

    MySQL入门(五) MySQL中的索引详讲

    之前写到MySQL对表的增删改查(查询最为重要)后,就感觉MySQL就差不多学完了,没有想继续学下去的心态了,原因可能是由于别人的影响,觉得对于MySQL来说...

    一杯凉茶1952020-09-02
  • MysqlMySql 5.7.14 解压版安装步骤详解

    MySql 5.7.14 解压版安装步骤详解

    本文给大家介绍MySql 5.7.14 解压版安装步骤详解,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看下吧...

    幸福的行路人2022020-06-18
  • MysqlMySQL学习笔记3:表的基本操作介绍

    MySQL学习笔记3:表的基本操作介绍

    要操作表首先需要选定数据库,因为表是存在于数据库内的;表的基本操作包括:创建表、显示表、查看表基本结构、查看表详细结构以及删除表等等,需要...

    MYSQL教程网4672019-12-15
  • MysqlMySQL中常见的八种SQL错误用法示例

    MySQL中常见的八种SQL错误用法示例

    这篇文章主要给大家介绍了关于MySQL中常见的八种SQL错误用法示例的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考...

    db匠4072020-12-02
  • Mysqlmysql 5.7.17 安装配置方法图文教程

    mysql 5.7.17 安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 5.7.17 安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    野心家4072020-09-30
  • MysqlMysql 删除数据库drop database详细介绍

    Mysql 删除数据库drop database详细介绍

    在mysql中,我们可以使用DROP DATABASE来删除数据库,并且数据库中所有表也随之删除。本文通过实例向各位码农介绍DROP DATABASE的使用方法,需要的朋友可以参...

    MYSQL教程网3362020-07-02
  • MysqlWindows平台下MySQL常用操作与命令

    Windows平台下MySQL常用操作与命令

    Windows平台下MySQL常用操作与命令,学习mysql的朋友可以参考下。 ...

    MYSQL教程网4222019-11-24
  • Mysql为什么MySQL不推荐使用子查询和JOIN?

    为什么MySQL不推荐使用子查询和JOIN?

    对于mysql,不推荐使用子查询和join是因为本身join的效率就是硬伤,一旦数据量很大效率就很难保证,强烈推荐分别根据索引单表取数据,然后在程序里面做...

    数据库开发9082021-08-24