我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章,回复【资料】,即可获得我精心整理的技术资料,电子书籍,一线大厂面试资料和优秀简历模板。

引言

众所周知,MySQL 8.x 版本做了一些比较大的改动优化,也希望大家能去了解下 MySQL 8 版本的一些新特性和优化点。工欲善其事必先利其器,那就必须要安装上 MySQL 8 版本的数据库才能体验学习,所以下面介绍如何在 Linux 服务器上安装 MySQL 8.X 版本数据库。

此次演示在 CentOS 7.x Linux 服务器上通过压缩包的方式安装 MySQL 8.x 数据库。

安装步骤

安装包官方下载地址:https://dev.mysql.com/downloads/mysql/

将下载后的压缩包上传到 Linux 服务器,解压缩。

tar -xvf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz

将解压后的文件夹重命名为 mysql,并且移动到 /usr/local/ 目录下。

mv mysql-8.0.26-linux-glibc2.12-x86_64 /usr/local/mysql

进入到 /usr/local/mysql 目录下,创建存放数据库数据的文件夹 data

cd /usr/local/mysql/
mkdir data

在 mysql 目录下新建 tmp 文件夹,并修改文件夹的权限。

mkdir tmp
chmod 777 /tmp

创建 mysql 用户组mysql 用户,并且将 mysql 目录极其下面所有文件权限分配给 mysql 用户。

groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql/

在 mysql 目录下执行以下命令,进行数据库初始化。初始化成功之后,会打印 root 用户的临时密码,记住后面需要用到。

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

修改 mysql 的配置信息,打开 my.cnf 配置文件。

vim  /etc/my.cnf

my.cnf 配置文件的原始内容如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# 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=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid #
# include all files from the config directory
#
!includedir /etc/my.cnf.d

将配置文件的内容修改为如下所示:

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock
character-set-server=utf8
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket=/usr/local/mysql/mysql.sock
default-character-set=utf8

将 mysql 添加到开机自启项中,复制 mysql.server 文件到 /etc/init.d/ 目录下并且重命名为 mysql,赋予运行权限,从而我们就可以使用 service mysql xx 命令进行启停 mysql 服务。

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

将 mysql 注册为服务。

chkconfig --add mysql

使用 chkconfig --list mysql 命令查看是否注册成功。

[root@chenpi mysql]# chkconfig --list mysql

Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration. If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'. mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off

启动服务,并查看服务状态。

[root@chenpi mysql]# service mysql start
Starting MySQL.Logging to '/usr/local/mysql/data/chenpi.err'.
. SUCCESS! [root@chenpi mysql]# service mysql status
SUCCESS! MySQL running (1622)

将 mysql 命令软连接到 /usr/bin 用户执行目录下。

ln -s /usr/local/mysql/bin/mysql /usr/bin

连接 mysql 服务,密码输入刚才安装时生成的临时密码。

mysql -uroot -p

修改密码。

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

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
Query OK, 0 rows affected (0.02 sec)

设置允许使用 root 用户远程连接,至此,mysql 服务安装完成了。

use mysql
update user set host ='%' where user='root';
FLUSH PRIVILEGES;

退出 mysql 使用命令 exit

MySQL 8.x 新版本特性赶紧学!!Linux 服务器上安装 MySQL 8.x的更多相关文章

  1. 在阿里云Linux服务器上安装MySQL

    申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务器. 操作系统:Red Hat Enterprise Linux Server 5.4 64位. CPU:1核 内存:5 ...

  2. linux服务器上安装mysql

    mysql版本:mysql-5.6.44-linux-glibc2.12-x86_64.tar linux操作系统和版本信息: 1.检查linux服务器上是否已安全mysql [root@localh ...

  3. Linux服务器上安装MySql数据库(默认安装,密码为空),首次使用需要修改密码

    1,在/etc/my.cnf末尾  加入skip-grant-tables,保存,跳过身份验证. 2,重启MySql,使刚才修改的配置生效. 3,终端输入mysql,然后再输入use mysql; 4 ...

  4. 在Linux机器上安装MySQL

    在Linux机器上安装MySQL,仔细认真些就没有问题. CentOS 7下MySQL 5.7安装.配置与应用_数据库技术_Linux公社-Linux系统门户网站 搞不定的话,直接删掉这个MySQL, ...

  5. navicat连接不上Linux服务器上的MySQL

    1.首先确定你的linux已经关闭防火墙 详细操作点这里: 如果是公司服务器防火墙比较重要不能关闭,那就麻烦点了,需要在防火墙的配置文件下配置属性. 如果还不能解决,请继续往下看. 2.如果是云服务器 ...

  6. Linux/UNIX 上安装 MySQL

    Linux/UNIX 上安装 MySQL Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址: MySQL - MySQL服务器.你需要该选项,除非你只想连 ...

  7. 在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式

    (一)MySQL多实例概述 实例是进程与内存的一个概述,所谓MySQL多实例,就是在服务器上启动多个相同的MySQL进程,运行在不同的端口(如3306,3307,3308),通过不同的端口对外提供服务 ...

  8. navicat突然连接不上远程linux服务器上的mysql

    我linux服务器上的mysql是docker安装的,突然有一天我的navicat连接不上服务器上的mysql,于是开始了下面一系列的修复 1.首先登录服务器上mysql,看是否能正常登录,我发现不能 ...

  9. 如何在Lunix云服务器上安装Mysql进行远程连接

    说说这个服务器上安装mysql真是一个大坑啊 ! 我也不知道自己怎么心血来潮就买一个百度云服务器,然后就想着吧自己做的一些小项目都跑上去.嘿嘿...其实就是想显摆下,写点小应用给不是编程的朋友们使用 ...

随机推荐

  1. spring IOC DI AOP MVC 事务, mybatis 源码解读

    demo https://gitee.com/easybao/aop.git spring DI运行时序 AbstractApplicationContext类的 refresh()方法 1: pre ...

  2. UF_MODL 建模操作

    Open C uc6560 uf5300uf5301uf5303uf5305uf5309uf5310uf5311uf5313uf5315uf5317uf5319uf5320uf5321uf5323uf ...

  3. MySQL 最佳实践 —— 高效插入数据

    当你需要在 MySQL 数据库中批量插入数百万条数据时,你就会意识到,逐条发送 INSERT 语句并不是一个可行的方法. MySQL 文档中有些值得一读的 INSERT 优化技巧. 在这篇文章里,我将 ...

  4. 【模板】Noi-Linux 下的一些配置

    Noi-Linux 下的一些配置(C++) vim 编程 来自远古的编程神器 针对网上其他博客的配置做了简化 配置 set t_Co=256 //开启256色模式 默认是16色 让你的vim更好看 s ...

  5. WEB安全新玩法 [3] 防护交易数据篡改

    在任何涉及交易的系统中,客户与商家之间的交易数据具有核心作用,如购买商品的价格.数量.型号和优惠券等.在客户挑选商品的过程中,这些交易数据逐渐形成:待客户提交订单时,交易数据被商家接收,形成双方认可的 ...

  6. Go语言十进制转二进制字符串

    Go语言十进制转二进制字符串 代码Demo func Test_2(t *testing.T) { // 方法一 fmt.Println(DecToBin(5)) // 方法二:导入包"gi ...

  7. unity调用安卓方法实现安装apk文件(androidx)

    原文链接:点击打开 unity想要实现安装apk文件需要与安卓通讯,所以需要自己来实现安卓代码. 第一步先要新建一个安卓项目提供给unity来使用,我这里使用的工具是android studio4.1 ...

  8. 分布式AKF拆分原则

    1. 前言 当我们需要分布式系统提供更强的性能时,该怎样扩展系统呢?什么时候该加机器?什么时候该重构代码?扩容时,究竟该选择哈希算法还是最小连接数算法,才能有效提升性能? 在面对 Scalabilit ...

  9. Jenkins+SonarQube实现C#代码质量检查

    环境准备 SonarQube 项目创建 jenkins Windows构建节点配置 安装与SonarQube服务端相同版本jdk 安装sonar-scanner 并配置环境变量 安装Visual St ...

  10. linux 操作目录

    脚本 获取一个目录下各子目录中的文件个数 #!/bin/sh find /tmp/homework -maxdepth 1 -type d | while read dir; do count=$(f ...