作者主页:https://www.cnblogs.com/milkbox

参考:

修改大小写:MySQL8.0安装后更改不区分大小写!包你必生效!_mysql8.0不区分大小写-CSDN博客

整个安装过程建议在root权限下进行。需要网络来下载相关依赖,如果你的系统已经存在相关以来,那么就可以离线安装。

下载与解压

去官网下载mysql8的安装包,选择好对应的版本,以mysql 8.0.35 ubuntu 22.04为例,其他版本可做参考。下载的时候选择第一个(也就是最大的那个安装包),第一个安装包里面包含除第一个以外下面所有的安装包(如果你不嫌麻烦,可以把除了第一个以外的所有安装包全部下载下来,效果是一样的)

MySQL :: Download MySQL Community Server

下载好后将安装包上传到linux服务器,位置随意,如下所示:

随便找个地方把他解压出来,执行命令:

sudo tar -xvf mysql-server_8.0.35-1ubuntu22.04_amd64.deb-bundle.tar

解压出来长这个样子:

作者主页:https://www.cnblogs.com/milkbox

安装

进入到这个目录下,执行安装命令(这个命令会加载指定路径下的所有被通配符匹配的文件,并自动处理其依赖顺序,按照正常的依赖顺序安装。注意当前目录下不要有其他非mysql相关的文件)

sudo dpkg -i ./*

如果执行这个命令出现有依赖在当前系统中不存在,可以使用如下指令进行修复(这个命令会检查当前目录下的所有deb安装包,检查其是否依赖其他文件,并自动下载其依赖的所有安装包并自动安装,然后再自动安装当前路径下的所有安装包。本篇教程仅此步骤需要服务器连接互联网)

sudo apt install -f

安装过程中会弹出三个界面,前两个是设置mysql数据库的root账号的密码与确认root的密码,可以自己设置你需要的密码(一定要记住这个密码,不然一会登不上了)。最后一个界面直接默认选择第一个选项就可以

安装完成后使用命令检查mysql的包是否已经全部安装

sudo dpkg -l | grep mysql

启动服务

先试用命令检查mysql是否已经启动(一般在安装完成后会默认启动)

sudo systemctl status mysql

如果mysql未启动,使用下面命令启动

sudo systemctl start mysql

如下界面表示启动成功

连接

注意:此时启动的mysql的使用的默认配置,默认是区分表名和字段名大小写的,如果不想区分大小写可以直接看后面的章节。

使用命令连接mysql,输入密码就是上面安装的时你设置的root密码

mysql -uroot -p

若可以成功进入数据库则证明mysql安装完成。

查看大小写配置

登入数据库,查看大小写配置

show variables like 'lower%';

如果lower_case_table_names选项的值为0则表示严格区分大小写,如果值为1则表示不区分大小写,默认值为0。(根据自己的需求进行修改)

修改大小写配置

注意:mysql8修改大小写配置必须完全重新初始化数据库才可以,所以在操作之前请备份好你的数据库。

下面将修改配置为不区分大小写

停止mysql服务

sudo systemctl stop mysql

删除mysql的数据目录

危险操作,注意备份。

这个路径在不同的mysql安装方式下可能有所差别。

这个路径存放的是mysql的数据库数据,删除这个路径会清空mysql的所有数据库,但mysql的相关配置以及安装本体不受影响,并不会卸载mysql。

这个目录必须删除才能重新初始化mysql。

sudo rm -rf /var/lib/mysql/*

修改mysql的配置文件

不同的linux发行版和不同的mysql安装方式会导致配置文件的路径不同,有的可能没有这个配置文件,如果没有,自己手动创建一个空的my.cnf放到指定路径下进行配置也可以。mysql的配置文件默认情况下可以放到好几个路径下面,具体位置可以自行查阅。

没有vim命令的可以用vi替换sudo vi /etc/mysql/my.cnf

sudo vim /etc/mysql/my.cnf

[mysqld]下面写入这一行lower_case_table_names=1,如果配置文件中没有[mysqld]那么自己写一个就可以

编辑完成后保存配置文件

执行下面命令手动初始化mysql

这一步可能会遇到一些问题,首先确保/var/lib/mysql路径存在并且有权限,确保这个路径下面没有任何文件。当然也可以自己指定一个位置。若无法解决权限问题可卸载重装mysql解决。如果/var/lib/mysql路径下有文件存在,那么mysql会拒绝初始化,请删除这个路径下的所有文件。

确保你的mysql版本是8,其他版本的初始化方式可能不同。

sudo mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql

查看日志,寻找初始化的时候为我们生成的root随机密码。

注意不同的安装方式可能会导致不同的日志位置,rpm安装方式的日志在/var/log/mysqld.log

sudo cat /var/log/mysql/error.log

可以看到,mysql默认为我们创建的root用户是没有密码的

查看mysql服务状态并启动服务(前面章节讲过)

这里可能会出现很多问题,一定要学会查看日志排查问题。sudo cat /var/log/mysql/error.log,不会的就去搜,或者问chatGPT

出现配置文件错误了,检查上面步骤修改配置文件的时候有没有写错字母

权限问题检查相关路径是否存在,是否有权限。可以使用sudo chmod 777 -R 指定的目录来修改权限

服务如果正常启动了,证明配置修改成功了,这个时候还得修改root密码才能使用

手动修改root密码

确保mysql服务已经启动,登录数据库

mysql -uroot -p

有密码的输入密码,没密码的直接回车。登录后执行sql进行修改

注意不同的mysq版本修改密码的sql也不同,如果是mysql5,可以尝试一下命令来修改密码

UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = 'root';
-- 或者
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码');
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
-- 或者
ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '新密码';
-- 或者直接设置允许远程连接
ALTER USER 'root'@'%' IDENTIFIED BY '新密码';

忘记root密码怎么办:

  1. 停止mysql服务
  2. 使用无验证方式启动mysql服务:mysqld --skip-grant-tables
  3. 在指令窗口直接输入mysql命令,敲回车。就可以登录成功
  4. 执行sqluse mysql;
  5. 执行修改 root 用户密码语句(就是普通的改密码操作)
  6. 重启mysql服务即可

mysql配置方式修改root密码

不同的mysql版本可能也不同,myslq5不确定有这个指令

sudo mysql_secure_installation

执行这个指令会提示让你进行很多配置,其中有修改root密码和是否启用root远程登录选项,可以根据自己的需求进行修改。

卸载

使用命令查看mysql的所有被安装的包

sudo dpkg -l | grep mysql

使用命令移除指定的软件包,按照mysql的依赖顺序逐个移除mysql的所有依赖

sudo dpkg -P 软件包名称

依赖顺序可使用命令查询

sudo apt-cache depends 软件包名称

卸载方式并非这一种,也可以使用aptapt-get等指令查询和卸载

安装概览

当前版本:8.0.35

安装方式:官方deb包安装

自启方式:系统服务(systemctl)控制

运行端口:3306

相关指令

不同的安装方式,指令可能不同,rpm安装方式为sudo systemctl start mysqld

# 启动
sudo systemctl start mysql # 停止
sudo systemctl stop mysql # 重启
sudo systemctl restart mysql # 查看运行状态
sudo systemctl status mysql
# 或者查看进程
sudo ps -ef | grep mysql # 本地连接
mysql -hlocalhost -P3306 -uroot -p

相关文件位置

配置文件位置:/etc/mysql/my.cnf

日志文件位置:/var/log/mysql/error.log

数据文件位置:/var/lib/mysql

ubuntu安装mysql8,debian安装mysql8,linux安装mysql8,x86_64架构,deb包的更多相关文章

  1. MySQL8.0.16 单机 Linux安装以及使用

    安装 先去下载 https://dev.mysql.com/downloads/mysql/ 然后上传到Linux 进入存放目录,解压到指定目录[我这里是/soft/mysql8] [root@loc ...

  2. debian下系列下的apt-get 命令与deb包的手动安装的dpkg命令

    手动下载的deb包的相关操作: 操作deb 使用dpkg 命令工具, dpkg 是Debian package的简写. 下面列举常用的 操作: dpkg –I name.deb  查看 包的详细信息( ...

  3. 续:纠正:ubuntu 【6.04 LTS】可以安装安装 ! for《Oracle-10.2.0.1,打补丁10.2.0.5:在 debian 版本4【不含4】以上,及 ubuntu 7.04【不含7.04】以上都可以安装!》

    经过长时间的试错.探索,终于查明无法顺利安装oracle10g的原因,并且找到顺利安装的方式. 要点: 无法安装的根本原因有2: 1:libc6-dev的版本为2.23-0ubuntu10,其中的cr ...

  4. 【转载】Caffe + Ubuntu 14.04 + CUDA 6.5 新手安装配置指南

    洋洋洒洒一大篇,就没截图了,这几天一直在折腾这个东西,实在没办法,不想用Linux但是,为了Caffe,只能如此了,安装这些东西,遇到很多问题,每个问题都要折磨很久,大概第一次就是这样的.想想,之后应 ...

  5. 20165210 预习作业3 Linux安装及学习

    Linux安装及学习 一.Linux安装 通过参考教程:基于VirtualBox虚拟机安装Ubuntu图文教程成功的安装上了Linux但在过程中还是有一些小问题的. 首先按着步骤走,一开始没什么毛病, ...

  6. linux安装最新(任意)版本nodejs

    首先在终端中使用命令 uname -a 查看系统版本 uname -a x86_64 是64位的 所以要安装64位对应的nodejs 打开nodejs中文网里的下载 找到64位的文件 点击后就下载了 ...

  7. Linux安装JDK、MySQL和Tomcat

    1 依赖的安装 因为JDK.Tomcat和MySQL的安装过程中需要从网上下载部分支持包才可以继续,所以需要提前安装好依赖. yum install glibc.1686 yum -y install ...

  8. Linux安装codis

    codis用go语言开发的,安装前记得先安装go开发环境,Linux安装go语言开发包 前提条件:记得安装git,否则无法下载go语言开发包 1.建立一个go语言的工作目录创建目录:sudo mkdi ...

  9. linux安装MySQL5.7记录

    目录 linux安装MySQL5.7记录 1. 在根目录下创建文件夹/software和数据库数据文件/data/mysql 2. 从官网下载相应的MySQL版本 3. 解压并移动到/software ...

  10. 服务器搭建--Linux安装rabbitmq

    安装rabbitmq需要先安装erlang:安装erlang参考https://blog.csdn.net/ztx114/article/details/79912570 1.下载rabbitmq-s ...

随机推荐

  1. PostgreSQL学习笔记-1.基础知识:创建、删除数据库和表格

    PostgreSQL 创建数据库 PostgreSQL 创建数据库可以用以下三种方式:1.使用 CREATE DATABASE SQL 语句来创建.2.使用 createdb 命令来创建.3.使用 p ...

  2. Chromium Mojo通信

    Mojo 是一个跨平台 IPC 框架,它诞生于 chromium ,用来实现 chromium 进程内/进程间的通信.目前,它也被用于 ChromeOS. 在我们代码应用中,如何使用Mojo来作进程间 ...

  3. 如何为你的WSL2更换最新的6.5.7kernel

    1.如果你像我一样,喜欢折腾你的 WSL2 ,这里是安装内核 6.X 的方法. 2.这是一个坏主意,可能会导致系统不稳定.数据损坏和其他问题.也可能会没事的,但不要怪我. Arch linux的wsl ...

  4. LVS+keepalived结合

    LVS+Keepalived实现高可用负载均衡(web集群) LVS+Keepalived架构图:   测试环境: 名称 操作系统 IP地址 LVS-MASTER Centos7.x 192.168. ...

  5. P8816 [CSP-J 2022] 上升点列

    Problem 考察算法:\(DP\). 题目简述 给你 \(n\) 个点,每个点有一个坐标 \((x_i,y_i)\),还可以添加 \(k\) 个点. 添加之后,求:最长的上升点列的长度. 上升点列 ...

  6. JVM指令分析

    代码: 1 public class AppGo{ 2 public static void test() { 3 boolean flag = true; 4 if (flag) System.ou ...

  7. 24. 从零用Rust编写正反向代理,细说HTTP行为中的几种定时器

    wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现 ...

  8. 【腾讯云 HAI域探秘】探索AI绘画之路:利用腾讯云HAI服务打造智能画家

    前言 随着人工智能的飞速发展,AI在艺术创作领域的应用正经历着一场革命性的变革.在这个数字时代,腾讯云的高性能应用服务HAI(Hyper Application Inventor)为艺术家和创作者提供 ...

  9. SNN_LIF模型

    LIF模型 Leaky integrity-Fire(LIF)模型 输入信号直接影响神经元的状态,即神经元膜电位,只有当膜电位上升到阈值的时候,才会产生输出信号. 膜电位:细胞膜两侧的电位差.只有当膜 ...

  10. 手撕Vue-Router-提取路由信息

    前言 好了经过上一篇的学习,我们已经知道了如何监听 Hash 的变化,如何监听路径的一个变化,本篇我们就可以来实现我们自己的 VueRouter 了, 那么怎么实现呢,在实现之前我们先来回顾一下官方的 ...