Linux环境下的Java项目部署技巧:安装 Mysql

embedded/2025/2/3 16:59:43/
  1. 查看 myslq 是否安装:
    rpm -qa|grep mysql

    1. 如果已经安装,可执行命令来删除软件包:
      rpm -e --nodeps 包名
  2. 下载 repo 源:
     http://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
  3. 执行命令安装 rpm 源(根据下载的 rpm 源进行选择)
    #CentOS7 安装mysql8
    rpm -ivh mysql80-community-release-el7-7.noarch.rpm
    1. 查看 mysql yum 仓库中 mysql 版本,使用如下命令
      yum repolist all | grep mysql
    2. 可以看到 MySQL 5.5  5.6  5.7 为禁用状态,而 Mysql 8.0 为启用状态
    3. 修改相对应的版本为启用状态最新版本为禁用状态(自行选择)
      yum-config-manager --disable mysql80-community
      yum-config-manager --enable mysql57-community
  4. 安装 MySQL 服务:
    #安装mysql服务
    yum install mysql-community-server
    #查看mysql版本
    mysql -V
  5. 启动 MySQL:
    #查看mysql运行状态
    systemctl status mysqld.service
    #启动mysql
    systemctl start mysqld
    #停止mysql 
    systemctl stop mysqld
    #重启mysql 
    systemctl restart mysqld  
     
    1. 开启 mysql 开机自启动:
      #开启mysql开机自启动
      systemctl enable mysqld
      #关闭mysql开机自启动
      systemctl disable mysqld
  6. 设置 mysql 密码:
    1. 获取临时密码
      //获取MySQL临时密码
      grep 'temporary password' /var/log/mysqld.log

    2. 登录 mysql:密码是上面获取的临时密码
      //登录mysql
      mysql -uroot -p

    3. 用临时密码登陆后,设置 mysql 永久密码:
      show variables like 'validate_password.%';
      //根据下图中的密码策略设置mysql数据库密码(你不设置密码就无法进行其它操作)                      
      alter user 'root'@'localhost' identified by 'Zjx123456#';

    4. 注意:你的密码不符合密码策略的话是无法设置成功的,mysql8 默认密码策略如下图(最少 8 位,至少包含一个数字,至少包含一个特殊字符)
  7. 修改密码策略:
    1. 只能临时修改密码策略,重启 mysql 后自动恢复默认密码策略,想要永久修改 mysql 配置文件,一般来说临时修改密码策略就够了
      //设置密码长度
      set global validate_password.length = 6;
      //设置密码风险等级(等级越高要求密码越复杂),分为0、1、2级
      set global validate_password.policy = 0;//查询密码策略
      show variables like 'validate_password.%';//设置mysql数据库密码                       (这里是密码)
      alter user 'root'@'localhost' identified by 'Zjx123456#';
  8. 许外部访问 mysql 数据库:
    //创建用户(远程连接用的账号)           (远程连接用的密码)
    create user 'root'@'%' identified by 'mypassword';
    //mysql8.0版本
    //create user 'root'@'%' identified with mysql_native_password by 'Zjx123456#';//分配权限,运行远程连接(允许root账号远程连接)
    grant all privileges on *.* to 'root'@'%' with grant option;//刷新权限
    flush privileges;
    1. 远程链接数据库,如果远程连接不上,考虑防火墙是否开放了 mysql 端口 (3306) 和服务器上的 MySQL 端口(3306)
    2. 在使用 Navicat for mysql 链接 mysql 8.0时会报如下错误:
      Authentication plugin 'caching_sha2_password' cannot be loaded: 
    3. mysql 8.0 引入了新特性 caching_sha2_password,这种密码加密方式客户端不支持,客户端支持的是 mysql_native_password 这种加密方式
    4. 我们可以查看 mysql 数据库中 user 表的 plugin 字段
      use mysql;
      select host,user,plugin from user;

    5. 可以使用命令将他修改成 mysql_native_password 加密方式:
      update user set plugin='mysql_native_password' where user='root';
      //或者创建user时直接指定加密模式
      create user 'root'@'%' identified with mysql_native_password by 'Zjx123456#';

http://www.ppmy.cn/embedded/159224.html

相关文章

第 1 章 服务架构演进史

1.1 原始分布式时代 调用远程方法面临的问题与解决方案: 远程的服务在哪里——服务发现有多少个——负载均衡网络出现分区、超时或服务出错怎么办——熔断、隔离、降级方法的参数与返回结果如何表示——序列化协议信息如何传输——传输协议服务权限如何管理——认…

[SAP ABAP] 在ABAP Debugger调试器中设置断点

在命令框输入/H,点击回车以后,调试被激活,点击触发任意事件进入ABAP Debugger调试器界面 点击按钮,可以在Debugger调试器中新增临时断点 我们可以从ABAP命令、方法、功能、表单、异常、消息、源代码等多个维度在Debugger调试器中设…

Golang 应用的 Docker 部署方式介绍及使用详解

本文将介绍如何使用 Docker 部署一个基于 Go 语言的后台服务应用 godco,并介绍如何配置 MongoDB 数据库容器的连接,确保应用能够成功启动并连接到容器方式部署的mongoDB数据库。 前提条件 1.已安装 Docker/Podman 2.已安装 MongoDB 数据库容器&#xff…

使用 PaddlePaddle 实现逻辑回归:从训练到模型保存与加载

在机器学习中,逻辑回归是一种经典的分类算法,广泛应用于二分类问题。今天,我们将通过一个简单的例子,使用 PaddlePaddle 框架实现逻辑回归模型,并展示如何保存和加载模型,以便进行后续的预测。 1. 简介 逻…

解决.NET程序通过网盘传到Linux和macOS不能运行的问题

问题描述:.net程序用U盘传到虚拟机macOS和Linux可以正常运行,但是网盘传过去就不行。 解决方法: 这是文件权限的问题。当你通过U盘将文件传输到虚拟机的macOS和Linux系统时,文件的权限和所有权可能得到了保留或正确设置。但如果…

BW AO/工作簿权限配置

场景: 按事业部配置工作簿权限; 1、创建用户 事务码:SU01,用户主数据的维护,可以创建、修改、删除、锁定、解锁、修改密码等 用户设置详情页 2、创建权限角色 用户的权限菜单是通过权限角色分配来实现的 2.1、自定…

MySQL(导入sql文件)

传文件省略…(从windows传到linux) 改编码格式 为什么不在windows里面修改呢?因为windows打开发现根本打不开直接就卡住了数据过多了(4百万数据(不信可以自己试一下)) [rootCentOS8 ~]# file order_info.sql order_info.sql: UTF-8 Unicode…

线程的状态转换和调度

新建状态New:新创建了一个线程对象 可运行状态Runnable:线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 运行状态Running:可运行…