镜像下载、域名解析、时间同步请点击 阿里云开源镜像站

一、下载mysql8.0安装包

1、在local创建mysql文件夹

cd /usr/local

mkdir mysql

cd mysql

2、使用wget下载mysql8.0的xz安装包

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

二、解压mysql8.0安装包

1、解压

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

2、重命名解压后的mysql文件夹(名字太长了)

mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql8.0

3、创建data存储文件

cd mysql8.0

mkdir data

三、创建用户和用户组,并赋予权限

1、创建用户和用户组

groupadd mysql

useradd -g mysql mysql

2、给用户赋予权限

chown -R mysql.mysql /usr/local/mysql/mysql8.0

四、初始化mysql信息

1、切换到mysql8.0安装路径下

Tip:绝对路径:cd /usr/local/mysql/mysql8.0/bin

cd bin

2、初始化mysql基本信息

./mysqld --user=mysql --basedir=/usr/local/mysql/mysql8.0 --datadir=/usr/local/mysql/mysql8.0/data/ --initialize

3、获取到临时mysql密码

五、添加mysqld服务到系统

1、将mysqld服务添加到系统中

cd /usr/local/mysql/mysql8.0

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

2、授权以及添加服务

chmod +x /etc/init.d/mysql

chkconfig --add mysql

3、mysql5.7以后就没有my.cnf了,所以我们创建一个。(个人觉得方便一些)

sudo vim my.cnf

# Example MySQL config file for small systems.
#
# This is for a system with little memory (<= 64M) where MySQL is only used
# from time to time and it's important that the mysqld daemon
# doesn't use much resources.
#
# MySQL programs look for option files in a set of
# locations which depend on the deployment platform.
# You can copy this option file to one of those
# locations. For information about these locations, see:
# http://dev.mysql.com/doc/mysql/en/option-files.html
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option. # The following options will be passed to all MySQL clients
[client]
default-character-set=utf8
#password = k0Ui&wV(Z3yt
port = 3306
socket = /tmp/mysql.sock # Here follows entries for some specific programs # The MySQL server
[mysqld] #配置mysql的文件夹 和 mysql data目录
basedir=/usr/local/mysql/mysql8.0
datadir=/usr/local/mysql/mysql8.0/data
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
port = 3306
socket = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16K
max_allowed_packet = 1M
table_open_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 128K # Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (using the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking
server-id = 1 # Uncomment the following if you want to log updates
#log-bin=mysql-bin # binary logging format - mixed recommended
#binlog_format=mixed # Causes updates to non-transactional engines using statement format to be
# written directly to binary log. Before using this option make sure that
# there are no dependencies between transactional and non-transactional
# tables such as in the statement INSERT INTO t_myisam SELECT * FROM
# t_innodb; otherwise, slaves may diverge from the master.
#binlog_direct_non_transactional_updates=TRUE # Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 16M
#innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50 [mysqldump]
quick
max_allowed_packet = 16M [mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates [myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M [mysqlhotcopy]
interactive-timeout

*设置my.cnf权限

sudo chmod 664 /etc/my.cnf

4、启动mysql服务

service mysql start

如果出现下面报错

解决

将/var/lock/subsys/下mysql文件删除

5、查看mysql服务状态

service mysql status

6、将mysql命令添加到服务

ln -s /usr/local/mysql/mysql8.0/bin/mysql /usr/bin

六、登录mysql

1、登录 密码使用之前随机生成的密码

mysql mysql -uroot -p

2、修改管理员密码 其中123456是新的密码自己设置

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

3、重新加载缓存,使密码生效

flush privileges;

4、退出mysql,用新密码尝试登录管理员

七、修改mysql配置,使其可以用工具远程登录

update user set host='%' where user='root';

flush privileges;

云服务器不能远程连接mysql,解决

如果是买的云服务器,例如:阿里云服务器的,请到设置mysql(3306)安全策略

总结

到此就已经完成了在Linux中mysql8.0的所有安装。希望对大家有所帮助。

本文转自:https://blog.csdn.net/qq_45554167/article/details/121907007

实践:Linux下安装mysql8.0的更多相关文章

  1. linux下安装mysql8.0.x步骤

    1.下载mysql mysql官网:https://dev.mysql.com/downloads/mysql/ 将下载的mysql上传打linux 2.解压并重命名 [root@rsyncClien ...

  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. centos7下安装mysql8.0.12及设置权限

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

  5. Linux 下安装 mysql8

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

  6. centos6.10下安装mysql8.0.16root密码修改的坑

    上图截取别人的自己懒得弄,检查自己的linux是否有安装就按上图做就行了 接下来是我的干货 mysql8.0安群策略对密码设置很严格规则:大小写加数字和特殊字符串 使用yum安装mysql 后 my. ...

  7. Linux下安装3.0以上的python

    Linux下自带的python2.7是不建议删除的,很多系统软件依赖python2.7,但是现在我们学习python一般需要python3.0,下面介绍安装python3.0. 1.进入python官 ...

  8. 【记录】Linux环境安装mysql8.0

    话说mysql8.0版本比5.7版本要快2倍以上,这么看宣传怎么能不装8.0呢,但是新版本和旧版本有不少不同导致若使用以前的一些安装方法会导致安到一半就由于各种找不到文件卡住. 尝试了不少次,只有使用 ...

  9. windows10下安装mysql-8.0.15-winx64以及连接服务器过程中遇到的一些问题

    一.下载安装配置mysql-8.0.15 1.官网(https://dev.mysql.com/downloads/mysql/)下载zip包 2.解包到我的D:\mysql目录下 3.为mysql配 ...

随机推荐

  1. Sublime Python3编译环境修改

    http://blog.csdn.net/qq_33304418/article/details/63337602     添加编译环境python3.6 Tools -> Build Syst ...

  2. 使用纯swift代码文件制作framework

    因为最近我们公司的一个客户要求我们使用swift编写程序并且将API封装成framework的形式提供给他们,所以我就开始了swift实践之路. 程序编写完之后,我就琢磨怎么封装成framework的 ...

  3. 基于SSM风格的Java源代码生成器

    一.序言 UCode Cms 是一款Maven版的Java源代码生成器,是快速构建项目的利器.代码生成器模块属于可拆卸模块,即按需引入.代码生成器生成SSM(Spring.SpringBoot.Myb ...

  4. Solution -「HAOI 2018」「洛谷 P4491」染色

    \(\mathcal{Description}\)   Link.   用 \(m\) 种颜色为长为 \(n\) 的序列染色,每个位置一种颜色.对于一种染色方案,其价值为 \(w(\text{出现恰 ...

  5. 书写高质量sql的一些建议

    It's better to light a candle than to curse the darkness 老生常谈的不要使用select * 如果硬要使用select *,那么就请忍受一下以下 ...

  6. Dubbo源码剖析三之服务注册过程分析

    Dubbo源码剖析二之注册中心 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中对注册中心进行了简单的介绍,对Dubbo整合Zookeeper链接源码进行了详细分析.本文接着对服务注册过 ...

  7. git忽略文件权限检查

    如题  每个人本地设置不同 系统不同  环境不同  很有可能在团队开发的时候进行 不同文件权限的设置 但是如果大家都把这种权限的设置传上去 那么所有人的就都乱的 如果要去掉的话 第一步 进入这个项目的 ...

  8. PostgreSQL VACUUM 之深入浅出 (二)

    AUTOVACUUM AUTOVACUUM 简介 PostgreSQL 提供了 AUTOVACUUM 的机制. autovacuum 不仅会自动进行 VACUUM,也会自动进行 ANALYZE,以分析 ...

  9. 『无为则无心』Python面向对象 — 59、魔法方法

    目录 1.魔法方法__new__() 2.魔法方法__init__() 3.魔法方法__del__() 4.魔法方法__str__()和__repr__() 5.魔法方法__call__() 6.魔法 ...

  10. 五分钟,手撸一个Spring容器!

    大家好,我是老三,Spring是我们最常用的开源框架,经过多年发展,Spring已经发展成枝繁叶茂的大树,让我们难以窥其全貌. 这节,我们回归Spring的本质,五分钟手撸一个Spring容器,揭开S ...