linux安装 MySQL8 并配置开机自启动

目录

1.下载 mysql 安装包

2.上传并解压 mysql

3.修改 mysql 文件夹名

4.创建mysql 用户和用户组

5.数据目录

(1)创建目录

(2)赋予权限

6.初始化mysql

(1)配置参数

 (2)配置环境变量

(3)初始化

7.启动 MySQL

(1)启动 mysql

(2)查看 MySQL 是否启动成功

 8.登录 MySQL

(1)无密码方式登录

(2)修改密码

(3)设置允许远程登录

(4)在 navicat上测试连接

 9.设置 mysql开机自启动

(1)在/etc/rc.d/init.d/编辑一个新文件autostartmysql.sh

(2)为autostartmysql.sh赋予权限

(3) 将autostartmysql.sh添加到 chkconfig 中

(4)检查是否开机自启动 


1.下载 mysql 安装包

网盘资源如下

链接:https://pan.baidu.com/s/1qpChiXVAGZkrDFwlxsWMcg?pwd=f4wm 提取码: f4wm

2.上传并解压 mysql

这里的上传和解压的文件夹位置不必和我这一样,但是如果不一样要注意修改下面步骤中的路径

上传至 Linux 的/opt文件夹

解压到/usr/local文件夹下

使用命令

 tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz  -C /usr/local
.tar.gz后缀:tar -zxvf 文件名
.tar.xz后缀:tar -Jxvf 文件名

3.修改 mysql 文件夹名

mv mysql-8.0.30-linux-glibc2.12-x86_64    mysql

4.创建mysql 用户和用户组

groupadd mysql
useradd -r -g mysql mysql

5.数据目录

(1)创建目录

mkdir -p /usr/local/mysql8/datas

(2)赋予权限

# 更改属主和数组
chown -R mysql:mysql /usr/local/mysql8/datas
# 更改模式
chmod -R 750 /usr/local/mysql8/datas

6.初始化mysql

(1)配置参数

/usr/local/mysql8/下,创建my.cnf配置文件,用于初始化MySQL数据库

[mysql]
# 默认字符集
default-character-set=utf8mb4
[client]
port       = 3306
socket     = /tmp/mysql.sock

[mysqld]
port       = 3306
server-id  = 3306
user       = mysql
socket     = /tmp/mysql.sock
# 安装目录
basedir    = /usr/local/mysql8
# 数据存放目录
datadir    = /usr/local/mysql8/datas/mysql
log-bin    = /usr/local/mysql8/datas/mysql/mysql-bin
innodb_data_home_dir      =/usr/local/mysql8/datas/mysql
innodb_log_group_home_dir =/usr/local/mysql8/datas/mysql
#日志及进程数据的存放目录
log-error =/usr/local/mysql8/datas/mysql/mysql.log
pid-file  =/usr/local/mysql8/datas/mysql/mysql.pid
# 服务端使用的字符集默认为8比特编码
character-set-server=utf8mb4
lower_case_table_names=1
autocommit =1
 
 ##################以上要修改的########################
skip-external-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 1024
sort_buffer_size = 4M
net_buffer_length = 8K
read_buffer_size = 4M
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 64M
thread_cache_size = 128
  
#query_cache_size = 128M
tmp_table_size = 128M
explicit_defaults_for_timestamp = true
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535
   
binlog_format=mixed
    
binlog_expire_logs_seconds =864000
    
# 创建新表时将使用的默认存储引擎
default_storage_engine = InnoDB
innodb_data_file_path = ibdata1:10M:autoextend
innodb_buffer_pool_size = 1024M
innodb_log_file_size = 256M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
transaction-isolation=READ-COMMITTED
      
[mysqldump]
quick
max_allowed_packet = 16M
       
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 4M
read_buffer = 2M
write_buffer = 2M
        
[mysqlhotcopy]
interactive-timeout

 (2)配置环境变量

vim /etc/profile 或
vi /etc/profile

在末尾添加

export PATH=$PATH:/usr/local/mysql8/bin

更新配置

 source /etc/profile

 

(3)初始化

mysqld --defaults-file=/usr/local/mysql8/my.cnf --basedir=/usr/local/mysql8/ --datadir=/usr/local/mysql8/datas/mysql --user=mysql --initialize-insecure

参数:

  • defaults-file:指定配置文件(要放在–initialize 前面)
  • user: 指定用户
  • basedir:指定安装目录
  • datadir:指定初始化数据目录
  • intialize-insecure:初始化无密码

7.启动 MySQL

(1)启动 mysql

mysqld_safe --defaults-file=/usr/local/mysql8/my.cnf &

(2)查看 MySQL 是否启动成功

ps -ef|grep mysql

出现下列信息则启动成功

 8.登录 MySQL

(1)无密码方式登录

mysql -u root --skip-password

(2)修改密码

# 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# 刷新权限
FLUSH PRIVILEGES;

(3)设置允许远程登录

mysql> use mysql
mysql> update user set user.Host='%'where user.User='root';
mysql> flush privileges;
mysql> quit

(4)在 navicat上测试连接

 9.设置 mysql开机自启动

(1)在/etc/rc.d/init.d/编辑一个新文件autostartmysql.sh

cd /etc/rc.d/init.d/
vim ./autostartmysql.sh

autostartmysql.sh内容:

#!/bin/sh

# chkconfig: 2345 10 90
# description: myservice...
/usr/local/mysql8/bin/mysqld_safe --defaults-file=/usr/local/mysql8/my.cnf &

(2)为autostartmysql.sh赋予权限

chmod +x ./autostartmysql.sh

(3) 将autostartmysql.sh添加到 chkconfig 中

chkconfig --add ./autostartmysql.sh 
chkconfig autostartmysql.sh on

查看是否添加成功

chkconfig --list

我们创建的新文件已经添加成功

(4)检查是否开机自启动 

reboot 或  shutdown -r now   立即重启

重启后

ps -ef|grep mysql

查看 mysql 是否自启动 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/85922.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

VK1640B冰箱LED数显驱动IC资料介绍显示模式(8 段×12 位)CMOS 工艺制作

产品型号:VK1640B 封装形式:SSOP24 产品年份:新年份 概述 : VK1640B 是一款 LED(发光二极管显示器)驱动控制专用电路,内部集成有 MCU 数字接口、数据锁存器、LED 高压驱动。本产品采用 CMOS 工艺…

链表的顶级理解

目录 1.链表的概念及结构 2.链表的分类 单向或者双向 带头或者不带头 循环或者非循环 3.无头单向非循环链表的实现 3.1创建单链表 3.2遍历链表 3.3得到单链表的长度 3.4查找是否包含关键字 3.5头插法 3.6尾插法 3.7任意位置插入 3.8删除第一次出现关键字为key的节点 …

疲劳驾驶检测和识别4:C++实现疲劳驾驶检测和识别(含源码,可实时检测)

疲劳驾驶检测和识别4:C实现疲劳驾驶检测和识别(含源码,可实时检测) 目录 疲劳驾驶检测和识别4:C实现疲劳驾驶检测和识别(含源码,可实时检测) 1.疲劳驾驶检测和识别方法 2.人脸检测方法 3.疲劳驾驶识别模型(Python) &#xf…

家庭智慧管控中心——酷开系统全时AI

智能家居入口在哪? 或许你家已经有了!举个例子,智能电视就是其中的一种!智能家电的变革进度逐渐加深,人们对于智慧生活的需求也逐渐提高。伴随着人工智能、物联网、大数据等信息技术的发展,家电产品的智能化…

财务数据分析模板有哪些,能满足决策吗?

虽然企业的业务经营各有不同,但在财务数据分析上却有着相似的需求与流程,因此财务数据分析是可以形成一套标准化模板的。奥威BI数据可视化工具从多年丰富的BI项目中总结经验,形成一套标准化、系统化的财务数据分析模板,内含资产负…

FlashAttention算法详解

这篇文章的目的是详细的解释Flash Attention,为什么要解释FlashAttention呢?因为FlashAttention 是一种重新排序注意力计算的算法,它无需任何近似即可加速注意力计算并减少内存占用。所以作为目前LLM的模型加速它是一个非常好的解决方案&…

Redis数据结构之List

Redis 中列表(List)类型是用来存储多个有序的字符串,列表中的每个字符串成为元素 Eelement),一个列表最多可以存储 2^32-1 个元素。 在 Redis 中,可以对列表两端插入(push)和弹出&am…

[Go版]算法通关村第十二关黄金——字符串冲刺题

目录 题目:最长公共前缀解法1:纵向对比-循环内套循环写法复杂度:时间复杂度 O ( n ∗ m ) O(n*m) O(n∗m)、空间复杂度 O ( 1 ) O(1) O(1)Go代码 解法2:横向对比-两两对比(类似合并K个数组、合并K个链表)复…

<c++开发>通信工具 -之-SOME/IP移植部署 第一篇文章

<c开发>通信工具 -之-SOME/IP移植ubuntu部署 第一篇文章 一 前言 SOME/IP (Scalable service-Oriented MiddlewarE over IP) 是一种通信协议,主要用于嵌入式系统和车载网络中的服务导向通信。SOME/IP是AUTOSAR(AUTomotive Open …

基于ssm的CRM客户管理系统(spring + springMVC + mybatis)营销业务信息java jsp源代码

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 基于ssm的CRM客户管理系统(spring spring…

深入浅出 TCP/IP 协议栈

TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下…

ubuntu查看网速

使用speedomster测试网速 sudo apt-get install speedometer 查询需要测速的网卡 speedometer -r ens33 -t ens33 -r: 指定网卡的接收速度 -t: 指定网卡的发送速度 使用nload测试 sudo apt-get install nload 测速 nload -t 200 -i 1024 -o 128 -U M 参数含义&#xff0…

Temu闯关日韩受挫?跨境电商卖家如何打磨好营销链路

海外版拼多多 Temu 先后在日本和韩国上线,然而效果不似预期,日韩市场对这套“低价补贴”策略并不买账。作为一个尚未被日韩消费者熟悉的网站,其价格之便宜无法让消费者信任。除此之外更大的问题是,在日本卷不过线下零售与百元店&a…

qq windows版客户端0day复现——远程代码执行(七夕小礼物)

##ps:本文章仅用来分享,请勿将文章内的相关技术用于非法目的,请勿将文章内的相关技术用于非法目的,请勿将文章内的相关技术用于非法目的!!如有非法行为与本文章作者无任何关系。一切行为以遵守《中华人民共…

5.物联网LWIP之Socket编程优化与实现(补充4)

UDP编程模型 1.UDP C/S模型 2.UDP API socket int socket(int domain, int type, int protocol); domain: AF_INET 这是大多数用来产生socket的协议,使用TCP或UDP来传输,用IPv4的地址 AF_INET6 与上面类似,不过是来用IPv6的地址 …

GitLab与GitLab Runner安装(RPM与Docker方式),CI/CD初体验

背景 GitLab 是一个强大的版本控制系统和协作平台,记录一下在实际工作中关于 GitLab 的安装使用记录。 一开始使用 GitLab 时,是在 CentOS7 上直接以 rpm 包的方式进行安装,仅作为代码托管工具来使用,版本: 14.10.4 …

Maven安装及IDEA集成Maven

一、简介 Maven是apache旗下的开源项目,是一款用于管理和构建java项目的工具。 基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建。 在Maven项目中,有一个核心文件pom.xml。POM项目对象模型定义了项目的基本信息&#xff0c…

数据结构——队列(C语言)

需求:无 本篇文章将解决一下几个问题: 队列是什么?如何实现一个队列?什么场景下会用队列? 队列的概念: 队列:一种只允许一端进行插入数据操作,在另一端进行删除操作的特殊线性表。…

Ubuntu20 安装 libreoffice

1 更新apt-get sudo apt-get update2 安装jdk 查看jdk安装情况 Command java not found, but can be installed with:sudo apt install default-jre # version 2:1.11-72, or sudo apt install openjdk-11-jre-headless # version 11.0.138-0ubuntu1~20.04 sud…

【网络】IP网络层和数据链路层

IP协议详解 1.概念 1.1 四层模型 应用层:解决如何传输数据(依照什么格式/协议处理数据)的问题传输层:解决可靠性问题网络层:数据往哪里传,怎么找到目标主机数据链路层(物理层)&…