05-Linux部署MySQL

news/发布时间2024/9/20 7:54:21

Linux部署MySQL

在今后的使用过程中,需要频繁使用Linux系统,所以在Linux上安装软是必不可少的操作 。

前置要求

  1. 需要学习前四章知识,初识Linux、Linux基础命令、Linux权限管理、Linux高阶技巧这4个章节。
  2. 需要开启多态虚拟机,电脑内存要大于8G,或者可以选择使用阿里云等云服务器。

MySQL的安装部署

MySQL数据库管理系统(后续简称MySQL),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。

MySQL数据库可谓是软件行业的明星产品,无论是后端开发、大数据、AI、运维、测试等各类岗位,基本上都会和MySQL打交道。

从MySQL开始,进行实战的Linux软件安装部署。

下面将介绍2个版本进行安装:

  • MySQL 5.7版本安装
  • MySQL 8.x版本安装

MySQL5.7版本在CentOS系统安装

注意:安装操作需要root权限

MySQL的安装可以通过前面学习的yum命令进行。

安装

  • 配置yum仓库
# 更新密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

image-20240226172554403

  • 使用yum安装MySQL
# yum安装Mysql
yum -y install mysql-community-server

image-20240226172749209

  • 安装完成后,启动MySQL并配置开机自启动
systemctl start mysqld		# 启动
systemctl enable mysqld		# 开机自启

MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  • 检查MySQL的运行状态
systemctl status mysqld

image-20240226173321502

配置

配置管理员用户root的密码以及配置允许远程登录的权限

  • 获取MySQL的初始密码
# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
grep 'temporary password' /var/log/mysqld.log

image-20240226182858344

  • 登录MySQL
# 执行
mysql -uroot -p
# 解释
# -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
# -p,表示使用密码登陆# 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库

image-20240226183046500

  • 修改root用户密码
# 在MySQL控制台内执行
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc

image-20240226183252166

  • 配置root的简单密码

我们可以给root设置简单密码,如123456.

请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

# 如果你想设置简单密码,需要降低Mysql的密码安全级别
set global validate_password_policy=LOW; # 密码安全级别低
set global validate_password_length=4;	 # 密码长度最低4位即可# 然后就可以用简单密码了(在学习中使用简单密码,为了方便,生产中不要这样)
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

image-20240226183808937

  • 配置root远程登录

默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

请注意,允许root远程登录会带来安全风险

# 授权root远程登录
grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;  
# IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
# 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同# 刷新权限,生效
flush privileges;

image-20240226184254498

  • 退出MySQL控制台页面
# 退出命令
exit# 或者通过快捷键退出:ctrl + d
  • 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

netstat -anp | grep 3306

image-20240226184632374

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

使用Navicat连接centOS7.9中的MySQL5.7

  • 开启防火墙
systemctl start firewalld
  • 显示防火墙状态
systemctl status firewalld

image-20240226194448875

  • 打开防火墙的3306端口(--permanent永久生效)
firewall-cmd --zone=public --add-port=3306/tcp --permanent

image-20240226194617059

  • 重启防火墙
service firewalld restart

image-20240226194747713

  • 使用Navicat连接centOS中的MySQL5.7

image-20240226193756192

MySQL8.0版本在CentOS系统安装

注意:安装操作需要root权限

安装

  • 配置yum仓库(这里的2023要紧跟实时)
# 更新密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023# 安装Mysql8.x版本 yum库
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

image-20240226200846746

  • 使用yum安装MySQL
# yum安装Mysql
yum -y install mysql-community-server

image-20240226201253248

  • 安装完成后,启动MySQL并配置开机自启动
systemctl start mysqld		# 启动
systemctl enable mysqld		# 开机自启

MySQL安装完成后,会自动配置为名称叫做:mysqld的服务,可以被systemctl所管理

  • 查看MySQL的运行状态
systemctl status mysqld

image-20240226201557935

配置

主要修改root密码和允许root远程登录

  • 获取MySQL的初始密码
# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
grep 'temporary password' /var/log/mysqld.log
  • 登录MySQL数据库系统
# 执行
mysql -uroot -p
# 解释
# -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root
# -p,表示使用密码登陆# 执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库
  • 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
  • 配置root的简单密码

我们可以给root设置简单密码,如123456.

请注意,此配置仅仅是用于测试环境或学习环境的MySQL,如果是正式使用,请勿设置简单密码

set global validate_password.policy=0;		# 密码安全级别低
set global validate_password.length=4;		# 密码长度最低4位即可
  • 允许root远程登录,并设置远程登录密码

默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登陆MySQL系统

请注意,允许root远程登录会带来安全风险

# 第一次设置root远程登录,并配置远程密码使用如下SQL命令
create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc# 后续修改密码使用如下SQL命令
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
  • 退出MySQL控制台页面
# 退出命令
exit# 或者通过快捷键退出:ctrl + d
  • 检查端口

    MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

netstat -anp | grep 3306

image-20240226202459717

至此,MySQL就安装完成并可用了,请妥善保存好MySQL的root密码。

使用Navicat连接centOS7.9中的MySQL8.0

  • 开启防火墙
systemctl start firewalld
  • 显示防火墙状态
systemctl status firewalld
  • 打开防火墙的3306端口(--permanent永久生效)
firewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 重启防火墙
service firewalld restart

image-20240226202857815

  • 使用Navicat连接centOS中的MySQL8.0

image-20240226203059080

  • 查看MySQL版本
mysql> status;
--------------
mysql  Ver 8.0.36 for Linux on x86_64 (MySQL Community Server - GPL)Connection id:		12
Current database:	
Current user:		root@localhost
SSL:			Not in use
Current pager:		stdout
Using outfile:		''
Using delimiter:	;
Server version:		8.0.36 MySQL Community Server - GPL
Protocol version:	10
Connection:		Localhost via UNIX socket
Server characterset:	utf8mb4
Db     characterset:	utf8mb4
Client characterset:	utf8mb4
Conn.  characterset:	utf8mb4
UNIX socket:		/var/lib/mysql/mysql.sock
Binary data as:		Hexadecimal
Uptime:			18 min 0 secThreads: 3  Questions: 21  Slow queries: 0  Opens: 179  Flush tables: 3  Open tables: 95  Queries per second avg: 0.019
--------------mysql> 

可以看到这个MySQL的版本号是8.0.36

使用Xshell连接Ubuntu系统

Ubuntu系统的配置

  • 提升root权限
sudo su -
#输入密码
  • 安装net-tools
sudo apt install net-tools
  • 查看IP地址
ifconfig

image-20240227090507102

  • 查看22号端口
netstat -ntlp|grep 22
  • 安装spenssh-server
apt-get install openssh-server

image-20240227091220592

  • 启动ufw防火墙
ufw enable

image-20240227091252192

  • 允许通过TCP协议在22端口上的传入连接
ufw allow 22/tcp

image-20240227091318878

使用Xshell连接Ubuntu系统

  • 填写IP

image-20240227091527986

  • 填写用户密码

image-20240227091734501

  • 在Xshell上登录成功

image-20240227092037474

MySQL5.7版本在Ubuntu(可使用WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以我们需要额外的步骤才可以安装5.7版本的MySQL

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  • 下载apt仓库文件
# 下载apt仓库的安装包,Ubuntu的安装包是.deb文件
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb

image-20240227092236659

  • 配置apt仓库
# 使用dpkg命令安装仓库
dpkg -i mysql-apt-config_0.8.12-1_all.deb

弹出框中选择:ubuntu bionic (Ubuntu18.04系统的代号是bionic,选择18.04的版本库用来安装)

image-20240227092708227

弹出框中选择:MySQL Server & Cluster

image-20240227092809092

弹出框中选择:mysql-5.7

image-20240227092856842

最后选择ok

image-20240227092931537

  • 更新apt仓库的信息
# 首先导入仓库的密钥信息
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
# 更新仓库信息
apt update

image-20240227093156740

  • 检查是否成功配置MySQL5.7的仓库
apt-cache policy mysql-server

发现没有5.7版本的MySQL,并有以下报错

W: GPG error: http://repo.mysql.com/apt/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B7B3B788A8D3785C
E: The repository 'http://repo.mysql.com/apt/ubuntu bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

该报错说明APT无法验证仓库的 GPG 签名,因为它缺少必要的公钥,可以执行以下命令

#加入公钥
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B7B3B788A8D3785C
#更新apt
apt update
#查看是否配置MySQL5.7仓库
apt-cache policy mysql-server

image-20240227102657484

  • 安装MySQL5.7
# 使用apt安装mysql客户端和mysql服务端
apt install -f -y mysql-client=5.7* mysql-community-server=5.7*

加载安装

image-20240227102739790

进入安装界面

输入密码,123456,然后选择ok

image-20240227102939889

再次输入密码,然后选择ok

image-20240227103056935

  • 启动MySQL5.7
/etc/init.d/mysql start			# 启动
/etc/init.d/mysql stop			# 停止
/etc/init.d/mysql status		# 查看状态

image-20240227103257998

  • 对MySQL5.7进行初始化
# 执行如下命令,此命令是MySQL安装后自带的配置程序
mysql_secure_installation
# 可以通过which命令查看到这个自带程序所在的位置
root@DESKTOP-Q89USRE:~# which mysql_secure_installation
/usr/bin/mysql_secure_installation
  1. 输入密码

    image-20240227124358897

  2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

    image-20240227124432497

  3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

    image-20240227124526118

  4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

    image-20240227124621349

  5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

    image-20240227124708444

  6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

    image-20240227124747660

  7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

    image-20240227124933247

  8. 登录MySQL5.7

    mysql -u root -p
    

    image-20240227125057737

至此,在Ubuntu上安装MySQL5.7版本成功。

使用Navicat连接Ubuntu中的MySQL5.7

  • 配置MySQL的文件,需要用到vim操作,先安装vim命令
apt install vim

image-20240227133654441

  • 编辑/etc/mysql/mysql.conf.d/mysqld.cnf文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉 bind-address = 127.0.0.1

 # bind-address  = 127.0.0.1

添加3306端口

port = 3306

最后按ESC输入:wq保存并退出

  • 重启MySQL5.7
#停用MySQL
service mysql stop
#启动MySQL
service mysql start
#设置MySQL开机自启动
systemctl enable mysql
  • 进入MySQL配置远程登录密码
# 授权root远程登录
grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;  
# IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
# 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同# 刷新权限,生效
flush privileges;
  • 配置防火墙,开放3306防火墙端口
#安装防火墙软件
apt install firewalld

image-20240227140456214

  • 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 重启防火墙
firewall-cmd --reload
  • 查询防火墙是否允许通过3306端口
firewall-cmd --query-port=3306/tcp

image-20240227142036542

  • 使用Navicat连接Ubuntu中的MySQL5.7

image-20240227142347126

MySQL8.0版本在Ubuntu(可使用WSL环境)系统安装

课程中配置的WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以直接可以通过apt安装即可

注意,课程是以WSL获得的Ubuntu操作系统环境。

如果你通过VMware虚拟机的方式获得了Ubuntu操作系统环境,操作步骤不用担心,和课程中使用WSL环境是完全一致的

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

    课程中选择这种方式操作

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装

  • 如果已经安装过MySQL5.7版本,需要卸载仓库信息哦
# 卸载MySQL5.7版本
apt remove -y mysql-client=5.7* mysql-community-server=5.7*# 卸载5.7的仓库信息
dpkg -l | grep mysql | awk '{print $2}' | xargs dpkg -P
  • 更新apt仓库信息
apt update
  • 安装MySQL
apt install -y mysql-server
  • 启动MySQL
/etc/init.d/mysql start			# 启动
/etc/init.d/mysql stop			# 停止
/etc/init.d/mysql status		# 查看状态
  • 登录MySQL8.0,设置密码
# 直接执行:mysql
mysql
  • 设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
  • 退出MySQL控制台
exit
  • 初始化MySQL8.0
# 执行如下命令,此命令是MySQL安装后自带的配置程序
mysql_secure_installation
# 可以通过which命令查看到这个自带程序所在的位置
root@DESKTOP-Q89USRE:~# which mysql_secure_installation
/usr/bin/mysql_secure_installation
  • 输入密码

image-20240227144304223

  • 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

image-20240227144357318

  • 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

image-20240227144429413

  • 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

image-20240227144525722

  • 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

image-20240227144601972

  • 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

image-20240227144638707

  • 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

image-20240227144806619

  • 重新登陆MySQL(用更改后的密码)
mysql -u root -p

image-20240227144934181

至此,在Ubuntu上安装MySQL8.0版本成功。

使用Navicat连接Ubuntu中的MySQL8.0

  • 配置MySQL的文件,需要用到vim操作,先安装vim命令
apt install vim
  • 编辑/etc/mysql/mysql.conf.d/mysqld.cnf文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉 bind-address = 127.0.0.1

 # bind-address  = 127.0.0.1

添加3306端口

port = 3306

最后按ESC输入:wq保存并退出

  • 重启MySQL5.7
#停用MySQL
service mysql stop
#启动MySQL
service mysql start
#设置MySQL开机自启动
systemctl enable mysql
  • 进入MySQL配置远程登录密码

在MySQL 5.7.6及以后的版本中,CREATE USERGRANT语句是分开的

CREATE USER 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED BY '654321';
#授予该用户所有数据库的所有权限,并允许该用户授予其他用户权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
#刷新权限
FLUSH PRIVILEGES;
#退出
exit;

image-20240227150742350

  • 配置防火墙,开放3306防火墙端口
#安装防火墙软件
apt install firewalld
  • 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 重启防火墙
firewall-cmd --reload
  • 查询防火墙是否允许通过3306端口
firewall-cmd --query-port=3306/tcp
  • 使用Navicat连接Ubuntu中的MySQL8.0

image-20240227150356882

注意

在正式的生产环境中,一定要使用强密码配置MySQL的登录,以及Linux的登录,MySQL远程登录最好是固定一个公网IP,阿里云服务器中专用的安全组策略来设置,同时要定期备份数据库。否则你的数据库会像如下一样,被劫持。
在使用Ubuntu系统安装MySQL时,使用虚拟机创建的Ubuntu与上述WSL环境一样
WSL环境是指Windows自带的Linux系统环境

mmexport1709018445136

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

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

抖音视频评论数据提取软件|抖音数据抓取工具

一、开发背景: 在业务需求中,我们经常需要下载抖音视频。然而,在网上找到的视频通常只能通过逐个复制链接的方式进行抓取和下载,这种操作非常耗时。我们希望能够通过关键词自动批量抓取并选择性地下载抖音视频。因此,为…

java常用应用程序编程接口(API)——StringBuilder,StringBuffer及StringJoiner概述和使用区别

前言: String语句可以创建字符串,但想要改变字符串时只能重新创建新的字符串,操作繁琐,效率慢。StringBuilder,StringBuffer及StringJoiner是通过创建字符串对象来操作改变字符串,操作方便,效率…

Chiplet技术与汽车芯片(一)

目录 1.摩尔定律放缓 2.Chiplet的优势 2.1 提升芯片良率、降本增效 2.2 设计灵活,降低设计成本 2.3 标准实行,构建生态 3.Chiplet如何上车 22年8月左右,Chiplet概念突然在二级市场火了起来,封测四小龙华天、长电、通富微电、…

SQL Server添加用户登录

我们可以模拟一下让这个数据库可以给其它人使用 1、在计算机中添加一个新用户TeacherWang 2、在Sql Server中添加该计算机用户的登录权限 exec sp_grantlogin LAPTOP-61GDB2Q7\TeacherWang -- 之后这个计算机用户也可以登录数据库了 3、添加数据库的登录用户和密码&#xff0…

Spring注解之处理常见的 HTTP 请求

5 种常见的请求类型: GET :请求从服务器获取特定资源。举个例子:GET /users(获取所有学生)POST :在服务器上创建一个新的资源。举个例子:POST /users(创建学生)PUT :更新…

vite是什么

vite 是什么 vite —— 一个由 vue 作者尤雨溪开发的 web 开发工具 Vite由两个主要部分组成 dev server:利用浏览器的ESM能力来提供源文件,具有丰富的内置功能并具有高效的HMR生产构建:生产环境利用Rollup来构建代码,提供指令用…

vue如何重写移动端长按文字复制的功能

移动端长按文字会出现 “复制 全选”的默认弹框(这里拿安卓举例) 但是有的时候需要在长按的时候增加别的功能 这时候就需要禁用原生的弹框然后重写自己的功能 第一步:禁用掉原生弹窗 但是支持划选文字 重要css属性: -webkit-t…

【LeetCode】【滑动窗口长度不固定】978 最长湍流子数组

1794.【软件认证】最长的指定瑕疵度的元音子串 这个例题,是滑动窗口中长度不定求最大的题目,在看题之前可以先看一下【leetcode每日一题】【滑动窗口长度不固定】案例。 题目描述 定义:开头和结尾都是元音字母(aeiouAEIOU&…

【JVM】垃圾回收算法

📝个人主页:五敷有你 🔥系列专栏:JVM ⛺️稳中求进,晒太阳 垃圾回收算法 Java是如何实现垃圾回收的呢?简单来说,垃圾回收就做两件事 找到内存中存活的对象释放不在存活对象的内存&…

苍穹外卖 -- day11 - Apache ECharts- 营业额统计- 用户统计- 订单统计- 销量排名Top10

苍穹外卖-day11 课程内容 Apache ECharts 营业额统计 用户统计 订单统计 销量排名Top10 功能实现:数据统计 数据统计效果图: 1. Apache ECharts 1.1 介绍 Apache ECharts 是一款基于 Javascript 的数据可视化图表库,提供直观&#x…

【MySQL面试复习】了解过索引吗?(索引的底层原理)/B 树和B+树的区别是什么?

系列文章目录 在MySQL中,如何定位慢查询? 发现了某个SQL语句执行很慢,如何进行分析? 系列文章目录了解过索引吗?(索引的底层原理)B 树和B树的区别是什么? 了解过索引吗?(索引的底层原理) 如果没…

JavaScript+PHP实现视频文件分片上传

摘要 视频文件分片上传,整体思路是利用JavaScript将文件切片,然后循环调用上传接口 upload.php 将切片上传到服务器。这样将由原来的一个大文件上传变为多个小文件同时上传,节省了上传时间,这就是文件分片上传的其中一个好处。 上…

CentOS 7 定时任务 + Shell 脚本自动备份 MySQL 数据库(一次 Halo 建站数据库丢失的教训)

文章目录 前置条件创建备份脚本设置 Cron 任务测试备份脚本备份安全和维护一键恢复自动清除备份文件常见问题总结 TIP: 原文链接阅读体验更佳:CentOS 7 自动备份 MySQL 数据库 最近抽空简单搭了一个博客,目前内容较少,后续陆续发…

自动驾驶框架:自动驾驶汽车定位-感知-规划-决策-控制概述,按照我的架构图理解:决策决定的是速度,规划决定的是路径(架构理解推荐)

1.按照我的架构图理解:决策决定的是速度,规划决定的是路径 参考链接:【自动驾驶】运动规划丨速度规划丨自动驾驶速度规划及状态协调方法 2.下面是参考别人的理解: 自动驾驶汽车定位-感知-规划-决策-控制概述 规划-决策-控制知…

【项目部署上线】宝塔部署前端Docker部署后端

【项目部署上线】宝塔部署前端&Docker部署后端 文章目录 【项目部署上线】宝塔部署前端&Docker部署后端1.安装依赖1.1 安装mysql1.2 安装Canal1.3 安装redis1.4 安装rabbitmq1.5 安装nacos 2. 部署前端3. 部署后端 1.安装依赖 1.1 安装mysql docker run -d -p 3306:3…

JavaWeb——008MySQL(多表查询事务索引)

数据库开发-MySQL 数据库 数据库开发-MySQL1. 多表查询1.1 概述1.1.1 数据准备1.1.2 介绍1.1.3 分类 1.2 内连接1.3 外连接1.4 子查询1.4.1 介绍1.4.2 标量子查询1.4.3 列子查询1.4.4 行子查询1.4.5 表子查询 1.5 案例 2. 事务2.1 介绍2.2 操作2.3 四大特性 3. 索引3.1 介绍3.2…

flutter插件开发基础教程

前言 虽然现在已经有很多插件了,但是有时候还是需要自己开发一个插件。因此打算学习一下如何开发一个插件。这里只考虑安卓,安卓使用kotlin,kotlin不会也没事,我也不会。 参考项目:https://github.com/TBoyLi/flutte…

AI:134-基于深度学习的社交媒体图像内容分析

🚀点击这里跳转到本专栏,可查阅专栏顶置最新的指南宝典~ 🎉🎊🎉 你的技术旅程将在这里启航! 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带有在本地跑过的关键代码,详细讲解供…

java 通过 microsoft graph 调用outlook

废话不多说 一 官方文档 先看一下官方文档,https://learn.microsoft.com/zh-cn/graph/tutorials/java?contextoutlook%2Fcontext&tabsaad&tutorial-step1 其中的代码,可以通过地址下载:https://developer.microsoft.com/en-us/gra…

Go语言基本语法

Go语言基本语法 设置 GOPATH 环境变量 开始写 go 项目代码之前,需要我们先配置好环境变量。编辑 ~/.bash_profile(在终端中运行 vi ~/.bash_profile 即可)来添加下面这行代码(如果你找不到 .bash_profile,那自己创建…
推荐文章