首页 > 数据库 >Linux的MySQL数据库安装部署

Linux的MySQL数据库安装部署

时间:2023-08-10 15:22:48浏览次数:53  
标签:登录 rpm 数据库 Linux 密码 mysql MySQL root

简介

MySQL数据库,是知名的数据库系统,其特点是:轻量,简单,功能丰富。

MySQL常用版本有

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


MySQL在CentOS系统安装(5.7版本与8.0版本)

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

安装

  1. 配置yum仓库

    # 导入更新密钥
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
    
    # 安装MySQL5.7版本 yum库
    rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
    
    # 安装MySQL8.X版本 yum库
    rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
    
    # centos rpm安装mysql时依赖检测失败
    # mysql57-community-release 与 mysql80-community-release-el7-2.noarch 冲突
    # 卸载原来的MySQL
    rpm -qa |grep mysql    //搜索安装的MySQL包
    rpm -e --nodeps 搜索出来的包名    //卸载
    

    image-20230804171515061

    由于MySQL并不在CentOS的官方仓库中,所以得通过上面rpm命令

    • 导入MySQL仓库得密钥
    • 配置MySQL得yum仓库
  2. 使用yum安装MySQL

    # yum安装MySQL
    yum -y install mysql-community-server
    
  3. 安装完成后,启动MySQL并配置开机自启动

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

    systemctl start mysqld   #启动
    systemctl enable mysqld  #开启自启
    
  4. 检查MySQL的运行状态

    systemctl status mysqld
    

配置

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

  1. 获取MySQL的初始密码

    # 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
    grep 'temporary password' /var/log/mysqld.log
    
  2. 登录MySQL数据库

    # 使用root用户登录MySQL
    mysql -uroot -p
    # -u,登录的用户,MySQL数据库的管理员用户同Linux一样,是root
    # -p,表示使用密码登
    # 执行完毕后输入初始密码,即可进入MySQL数据库
    
    image-20230804174001158
  3. 修改root用户密码

    # 密码要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句,如123,abc
    
    # 在MySQL5.7控制台内执行
    ALTER USER 'root'@'localhost' IDENTIFIED BY '密码'
    
    # 在MySQL8.0控制台内执行
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码' 
    
  4. [扩展],配置root的简单密码

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

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

    # 如果想设置简单密码,需要降低MySQL的密码安全级别
    set global validate_password_policy=LOW # 密码级别低 
    set global validate_password_length=4 # 密码长度最低4位即可
    

    关于validate_password.policy的取值:

    1. 0 / LOW:只验证长度;
    2. 1 / MEDIUM:验证长度、数字、大小写、特殊字符;
    3. 2 / STRONG:验证长度、数字、大小写、特殊字符、字典文件;
  5. [扩展],配置root运行远程登录

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

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

    # MySQL5.7版本
    # 授权root远程登录
    grant all privileges on *.* to root@'IP地址' identifed by '密码' with grant option
    # IP地址即允许登录的IP地址,也可以填写%,表示允许任何地址
    # 密码表示给远程登录独立设置密码,和本地登录的密码可以不同
    
    # 刷新权限,生效
    flush privileges;
    
    # MySQL8.0版本
    # 第一次设置root远程登录,并配置远程密码使用如下SQL命令
    create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码'
    
    # 后续修改密码使用如下SQL命令
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码'
    
  6. 退出MySQL控制台页面

    # 退出命令
    exit 或者通过快捷键退出:ctel + d
    

标签:登录,rpm,数据库,Linux,密码,mysql,MySQL,root
From: https://www.cnblogs.com/KeFeng/p/17620430.html

相关文章

  • MySQL统计各种数据库对象大小
    MySQL统计各种数据库对象大小;包含:数据库、表、索引等脚本使用示例统计实例中各数据库大小SELECTTABLE_SCHEMA,round(SUM(data_length+index_length)/1024/1024,2)ASTOTAL_MB,round(SUM(data_length)/1024/1024,2)ASDATA_MB,round(SUM(index_length)/1024/1024,2)ASINDEX......
  • postger数据库使用开窗函数删除表内重复数据
    使用id字段开窗(也可以多个字段,但是any函数和arry函数需要替换)select*fromgatherdata.temp_zyr_export_1awherea.linkid=any(array(selectlinkidfrom(selectrow_number()over(partitionbylinkid),linkidfromgatherdata.temp_zyr_export_1)twheret.ro......
  • Linux --- 修改控制台字体consolefont
    Linux---修改控制台字体consolefont用户层面对于debianlike的系统,可到如下路径查找consolefont$cd/usr/share/consolefonts/$lsArabic-Fixed15.psf.gzCyrSlav-VGA32x16.psf.gzFullGreek-VGA8.psf.gzLat15-VGA16.psf.gz......
  • 嵌入式 Linux ------ UBIFS 文件系统的使用
    LinuxUBIFS文件系统的使用平台环境如下设施版本CPUAllwinnerF1C100slinux6.4.0-rc4ubootv2023.07-rc4buildrootv2023.02闪存WinbondSPI-Nand128MBW25N01G从Buildroot生成UBIFS手动创建UBIFS参考如下内容3.制作ubifsUbifs的制作......
  • Linux开发板调用摄像头(V4L2编程,含YUYV解码RGB)
    本文是基于Linux开发板的V4L2摄像头调用程序,包括YUYV解码为RGB,以及将摄像头数据显示在开发板屏幕上。代码未封装,可直接在linux下编译使用。 工作流程:打开设备—>检查和设置设备属性—>设置帧格式—>设置一种输入输出方法(缓冲区管理)—>循环获取数据—>数据解码—>显......
  • 记录一次解决数据库连接池连接泄露BUG
    1BUG现象系统并发请求,系统停滞无法使用,所有接口都是无法与后端进行交互的状态,系统并没有宕机2BUG的业务流程插入分数方法涉及插入表ABCD加了声明式事务查询分数方法涉及表ABCDcontroller(){ @Transactional insertVo(); selectById();}3排查原因因为代码不是......
  • 全方位对比 Postgres 和 MySQL(2023 版)
    根据2023年的StackOverflow调研(https://survey.stackoverflow.co/2023/),Postgres已经取代MySQL成为最受敬仰和渴望(themostadmired,desired)的数据库。  随着Postgres的发展势头愈发强劲,在Postgres和MySQL之间做选择变得更难了。 如果看安装数量......
  • (笔记)Linux内核编译: scripts/kconfig/lxdialog/dialog.h:38:20: fatal error: curse
     一、问题描述在编译Linux内核时,使用makemenuconfig报错:scripts/kconfig/lxdialog/dialog.h:38:20:fatalerror:curses.h:Nosuchfileordirectortdyizhen1314@ubuntu:~/tronlong/AM57X/kernel/linux-4.9.65$makeARCH=armCROSS_COMPILE=arm-linux-gnueabihf-menuc......
  • Mac下终端密钥登录linux服务器
    通常我们登录Linux有两种方法:密码或密钥密码登录每次都要输入用户名密码比较麻烦,而使用密钥则可以避免这个问题一、创建密钥对打开终端,输入以下命令ssh-keygen-trsa-C'[email protected]'-t指定密钥类型,默认即rsa,可以省略-C设置注释文字,比如你的邮箱或者服务......
  • Linux基础概念:历史、发展、发行版及命令行工具详解
    ·介绍:Linux是一种开源的、类Unix操作系统内核,它具有广泛的应用领域和强大的稳定性。本文将深入探讨Linux的历史与发展、常见的Linux发行版及其特点,以及常用的Linux命令行工具和基本操作。此外,还会提供个人见解和难点解析。一、Linux的历史与发展Linux的历史可以追溯到1991年,由芬......