[MySQL / Mariadb] 数据库学习-Linux中二进制方式安装MySQL5.7

news/2024/5/5 5:44:54/文章来源:https://blog.csdn.net/HYFarashi/article/details/130522582

Linux中二进制方式安装MySQL5.7

  • 安装
    • 安装方式
    • 官网下载安装包
    • 创建用户组mysql,用户和目录
    • 把下载的安装包,放到/home/mysql/
      • 将本地文件拷贝到远程: scp 文件名 –用户名@计算机IP或者计算机名称:远程路径
    • 验证包
    • 解压安装包,移动到/usr/local/mysql/
    • 在根下创建MySQL目录,改归属权限
    • 修改内核参数、环境变量、安装libaio库
    • 修改内核参数
    • 环境变量
    • 配置参数文件 my.cnf
    • 初始化
    • 启动
    • 修改密码
  • 库、表管理
    • 默认系统库
    • 库的管理
    • 表的管理
    • 表管理命令:

安装

安装方式

源码安装
RPM包安装
二进制安装

官网下载安装包

网址:https://www.mysql.com/downloads/

请添加图片描述

请添加图片描述

请添加图片描述

直接点击下载

请添加图片描述
请添加图片描述

创建用户组mysql,用户和目录

[root@control ~]# groupadd mysql
[root@control ~]# useradd -g mysql mysql
[root@control ~]# passwd mysql
Changing password for user mysql.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@control ~]#

把下载的安装包,放到/home/mysql/

将本地文件拷贝到远程: scp 文件名 –用户名@计算机IP或者计算机名称:远程路径

[root@server1 ~]# scp mysql-5.7.42-linux-glibc2.12-x86_64.tar root@172.25.254.100:/home/mysql/
mysql-5.7.42-linux-glibc2.12-x86_64.tar                      100%  680MB   3.5MB/s   03:15
[root@server1 ~]#

验证包

[root@control ~]# ls /home/mysql/ -al
total 696220
drwx------. 2 mysql mysql       130 May  6 12:10 .
drwxr-xr-x. 4 root  root         32 May  6 11:16 ..
-rw-r--r--. 1 mysql mysql       312 Aug 30  2019 .bashrc
-rw-r--r--. 1 root  root  712912384 May  6 12:13 mysql-5.7.42-linux-glibc2.12-x86_64.tar

解压安装包,移动到/usr/local/mysql/

[root@control local]# mkdir -p /usr/local/mysql/[root@control local]# ls /home/mysql/
mysql-5.7.42-linux-glibc2.12-x86_64.tar[root@control local]# mv /home/mysql/mysql-5.7.42-linux-glibc2.12-x86_64.tar /usr/local/mysql/
[root@control local]# ls /usr/local/mysql/
mysql-5.7.42-linux-glibc2.12-x86_64.tar
[root@control local]# tar -xvf /usr/local/mysql/mysql-5.7.42-linux-glibc2.12-x86_64.tar
mysql-test-5.7.42-linux-glibc2.12-x86_64.tar.gz
mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz[root@control mysql]# tar -xvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz[root@control mysql]# ls -l
total 1392408
drwxr-xr-x. 9 root  root        129 May  6 13:42 mysql-5.7.42-linux-glibc2.12-x86_64
-rwxr-xr-x. 1 mysql mysql 712912384 May  6 12:21 mysql-5.7.42-linux-glibc2.12-x86_64.tar
-rw-r--r--. 1  7161 31415 678258106 Mar 17 00:18 mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz
-rw-r--r--. 1  7161 31415  34651721 Mar 17 00:16 mysql-test-5.7.42-linux-glibc2.12-x86_64.tar.gz改权限、归属[root@control mysql]# chmod -R 755 /usr/local/mysql
[root@control mysql]# chown -R mysql:mysql /usr/local/mysql
[root@control mysql]# ls -al
total 1392408
drwxr-xr-x.  3 mysql mysql       201 May  6 13:40 .
drwxr-xr-x. 13 root  root        249 May  6 12:24 ..
drwxr-xr-x.  9 mysql mysql       129 May  6 13:42 mysql-5.7.42-linux-glibc2.12-x86_64
-rwxr-xr-x.  1 mysql mysql 712912384 May  6 12:21 mysql-5.7.42-linux-glibc2.12-x86_64.tar
-rwxr-xr-x.  1 mysql mysql 678258106 Mar 17 00:18 mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz
-rwxr-xr-x.  1 mysql mysql  34651721 Mar 17 00:16 mysql-test-5.7.42-linux-glibc2.12-x86_64.tar.gz

在根下创建MySQL目录,改归属权限

[root@control bin]# mkdir -p /mysql/3306/{data,redo,binlog,tmp,logs}[root@control bin]# chown -R mysql:mysql /mysql/
[root@control bin]# chmod -R 755 /mysql/
[root@control bin]# ls / -al
total 20
dr-xr-xr-x.  18 root  root   237 May  6 13:47 .
dr-xr-xr-x.  18 root  root   237 May  6 13:47 ..
lrwxrwxrwx.   1 root  root     7 Aug 12  2018 bin -> usr/bin
dr-xr-xr-x.   5 root  root  4096 Oct 30  2020 boot
drwxr-xr-x.  21 root  root  3180 May  6 10:45 dev
drwxr-xr-x.  82 root  root  8192 May  6 12:02 etc
drwxr-xr-x.   4 root  root    32 May  6 11:16 home
lrwxrwxrwx.   1 root  root     7 Aug 12  2018 lib -> usr/lib
lrwxrwxrwx.   1 root  root     9 Aug 12  2018 lib64 -> usr/lib64
drwxr-xr-x.   2 root  root     6 Aug 12  2018 media
drwxr-xr-x.   2 root  root     6 Aug 12  2018 mnt
drwxr-xr-x.   3 mysql mysql   18 May  6 13:47 mysql

修改内核参数、环境变量、安装libaio库

修改内核参数

[root@control bin]# vim /etc/security/limits.confmysql   soft    nproc   65535
mysql   hard    nproc   65535mysql   soft    nofile   65535
mysql   hard    nofile   65535
:wq
[root@control bin]# yum install libaio
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Last metadata expiration check: 1:13:42 ago on Sat 06 May 2023 01:57:46 PM CST.
Package libaio-0.3.112-1.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
[root@control bin]# yum list|grep libaio
libaio.x86_64                                        0.3.112-1.el8                                     @anaconda
libaio.i686                                          0.3.112-1.el8                                     baseos
libaio-devel.i686                                    0.3.112-1.el8                                     baseos
libaio-devel.x86_64                                  0.3.112-1.el8                                     baseos
[root@control bin]#

环境变量

[mysql@control ~]$ vim .bash_profile
[mysql@control ~]$ cat .bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsexport PATH=/usr/local/mysql/bin:$PATH
[mysql@control ~]$

找到PATH行,看到有usr/local/mysql/bin:,就成功了

[mysql@control ~]$ . ./.bash_profile[mysql@control ~]$ env
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;
LANG=en_US.UTF-8
HISTCONTROL=ignoredups
HOSTNAME=control
USER=mysql
PWD=/home/mysql
HOME=/home/mysql
MAIL=/var/spool/mail/mysql
SHELL=/bin/bash
TERM=xterm
SHLVL=1
LOGNAME=mysql
PATH=/usr/local/mysql/bin:/home/mysql/.local/bin:/home/mysql/bin:/home/mysql/.local/bin:/home/mysql/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

配置参数文件 my.cnf

在 /mysql,下创建配置文件

[root@control 3306]# vim my.cnf
[root@control 3306]# pwd
/mysql/3306
[root@control 3306]# ls
binlog  data  logs  my.cnf  redo  tmp
[root@control 3306]#
[client]
default-character-set   = utf8
port                    = 3306
socket                  = /mysql/3306/tmp/mysql.sock[mysqld]
port                    = 3306
character_set_server    = utf8
server-id               = 1
socket                  = /mysql/3306/tmp/mysql.sock
basedir                 = /usr/local/mysql
datadir                 = /mysql/3306/data
tmpdir                  = /mysql/3306/tmp
log-error               = /mysql/3306/logs/alert_3306.log
pid-file                = /mysql/3306/tmp/mysql.pid
log-bin                 = /mysql/3306/binlog/mysql-bin
slow_query_log_file     = /mysql/3306/logs/slow.log
default-storage-engine  = INNODB
innodb_data_file_path   = ibdata1:2G:autoextend
innodb_log_group_home_dir       = /mysql/3306/redo
innodb_file_per_table   = 1
~
~
~
~
~
~
~
~
:wq

初始化

启动

修改密码

库、表管理

默认系统库

information_schema:记录了用户、表、视图等元数据信息。这个库是虚拟出来的库,是由MySQL实例构建和维护的,其对象都保存在内存中,在磁盘上找不到对应的物理存在。用户也无法在该库下创建对象,只能查询。
mysql:记录了用户权限、帮助、日志等信息。
performance_schema:记录了数据库性能原始指标等信息。
sys:sys库提供了一些访问performance_schema的视图,目标是把performance_schema的复杂度降低,方便DBA快速了解数据的状态

库的管理

创建/删除/查看库

  1. 查看建库语法: help create database;
  2. 创建数据库: create database bddb;
  3. 删除数据库: drop database bddb;
  4. 查看当前存在的库: show databases;
  5. 查看创建库脚本: show create database bddb;

例:

mysql> create database dbaaa;
Query OK, 1 row affected (1.00 sec)mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| dbaaa              |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)mysql> show create database dbaaa;
+----------+---------------------------------------------------------------------------------------------------------------------------------+
| Database | Create Database                                                                                                                 |
+----------+---------------------------------------------------------------------------------------------------------------------------------+
| dbaaa    | CREATE DATABASE `dbaaa` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+----------+---------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.05 sec)

表的管理

查看建表语法:help create table;
查看建表语句:show create table xxxx; o
查看表结构信息: show columns from xxxx 或desc xxxx;
查看索引信息 : show index from mysql.db;
查看修改表的语法 : help alter table;
添加列 : alter table users add (email varchar(50),salary smallint);
删除列 :alter table users drop salary;
修改列长 : alter table user modify username varchar(20);

表管理命令:

		建表:表用于存储数据文件create  table  库名.表名(字段名1  类型(宽度),字段名2  类型(宽度),... ...) DEFAULT  CHARSET=utf8;		##指定中文字符,让表支持插入中文desc  库名.表名;			##查看表结构drop  table  库名.表名;		##删除表select  *  from  库名.表名;		##查看表记录insert  into  库名.表名  values(值列表);	##插入表记录update  库名.表名  set  字段=值;	##修改表记录delete  from  库名.表名;		##删除表记录show  create  table   表名;		##查看创建表的命令和相关属性

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

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

相关文章

OJ 系统常用功能介绍 快速入门 C++ Python JAVA语言在线评测

技术支持微 makytony 服务器配置 腾讯云 2H4G 5M 60GB 轻量应用服务器 承载大约 200~400人使用,经过压力测试,评测并发速度可满足130人左右的在线比赛。 系统镜像选 Ubuntu 22.04 LTS ,Ubuntu是最热门的Linux发行版之一,是一款…

数组中的empty剖析

数组中的empty剖析 一、首先empty是怎么来的 直接通过new Array来新建,手动修改数组的length,逗号之间没有任何数据等 const array new Array(3); console.log(array); //* (3) [empty 3]const array2 [1, , 3]; console.log(array2); //* [1, e…

一起学 WebGL:绘制图片

大家好,我是前端西瓜哥。之前讲解了如何用 WebGL 绘制红色三角形,今天西瓜哥带大家来学习如何将图片绘制到画布上的技术:纹理映射(texture mapping)。 本文为系列文章中的一篇,请先阅读: 《一起…

python 系列 07 - 基于easyocr的ocr识别

OCR,光学文字识别,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。本示例通过easyocr库来演示。easyocr是一个比较流行的库,支持超过80种语言。安装的时候注意会附带安装torch库(一个深度学…

【Python】序列类型③-集合

文章目录 1.集合(set)简介2.集合的定义3.集合的遍历4.集合的常用方法 1.集合(set)简介 集合是一种无序可变的容器对象 集合最大的特点:同一个集合内元素是不允许有重复的,因此集合自带"去重"效果 2.集合的定义 集合的定义有两种方式: 使用{}进行定义,这种方式不能定…

获得 随机验证码(以图片为底层)

1:工具类 Slf4j public class RandomValidateCode {private static String baseNumLetter "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ";private static String font "微软雅黑";//绘制验证码图片,返回验证码文本内容pu…

基于海鸥算法改进的随机森林分类算法-附代码

基于海鸥算法改进的随机森林分类算法 文章目录 基于海鸥算法改进的随机森林分类算法1.数据集2.RF模型3.基于海鸥算法优化的RF4.测试结果5.Matlab代码6.Python代码 摘要:为了提高随机森林数据的分类预测准确率,对随机森林中的树木个数和最小叶子点数参数利…

版本控制系统Git - 配置与基本使用

Git 1 Git简介1 Git概述2 Git的作用2.1 项目版本管理2.2 多人协同开发2.3 Git 的结构2.4 Git的工作原理 2 Git安装1 下载Git2 安装Git3 配置环境变量4 测试git是否安装成功5 安装git桌面工具(可以不安装) 3 Git基本操作1 设置Git用户2 新建仓库3 查看仓库状态4 添加到暂存文件5…

【python可视化】常用数据类型

🙋‍ 哈喽大家好,本次是python数据分析、挖掘与可视化专栏第二期 ⭐本期内容:常用数据类型 🏆系列专栏:Python数据分析、挖掘与可视化 👍欢迎大佬指正,一起学习,一起加油&#xff01…

C++入门3(C++新特性 using string auto)

C入门3 C新特性auto推导规则auto 作为函数的形参类型decltype基于范围for循环 typedef与usingC语言定义变量typedef 在C语言中的写法using在C11中的写法using与template的结合 string的简单使用 C新特性 auto推导规则 auto类型推导: auto定义的变量,可以根据初始化…

C语言单链表

本节目标: ①定义单链表结构体 ②初始化单链表 ③单链表增加结点(头插法、尾插法) ④删除指定结点 ⑤打印输出 目录 导入头文件 定义单链表结构体 初始化单链表 头插法 尾插法插入 删除指定结点 打印单链表 全部代码展示 导入头文件 …

中文大模型安全性哪家强?清华团队新发布

当前大型语言模型的火爆程度我们不用再进行赘述了,伴随着百度文心一言打响国内商业大模型第一枪,华为盘古,阿里通义千问,智谱ChatGLM,科大讯飞星火等国内公司纷纷开始布局。 另一方面由于众所周知的政策原因,和如火如荼…

5 分钟教你如何免费用上 GPT-4

今天要分享的就是普通用户,没有 OpenAI 账号,不需要写代码,你依然可以免费体验 GPT-4,当然,会有一些缺点,本篇文章将会手把手教你怎么用上免费版的 GPT-4 以及它的一些限制。 第一步:打开 Stea…

Threejs进阶之十三:CSS3DRenderer与Tween.js实现粒子小球按规律变化

今天我们使用CSS3DRendererTween.js实现Threejs官方示例中的粒子小球按规律变化的效果,先看下最终实现的效果 先来分析下,这个页面的动画效果是由512个小球组合起来的四种不同变化,分别是曲面、立方体、随机和圆球四种变化;下面我…

UDP的报文结构

UDP 报文结构 基本上所有的教科书上都是这样画的图, 但实际上 UDP 报文结构不是这样的, 这样显示应该是容易排版. 正确应该如下图 : 端口号 : 每个端口号在 UDP 报文里占两个字节, 取值范围就是: 0 ~ 65535 源 ip 和源端口描述了数据从哪里来, 目的 ip 和目的端口描述了数据去哪…

文本的清洗和标准化:如何处理混乱的数据?

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

操作系统考试复习—第三章 优先级倒置 死锁问题

当前OS广泛采用优先级调度算法和抢占方式,然而在系统中存在着影响进程运行的资源从而可能产生"优先级倒置"现象 具体解释为:在原本的调度算法设计中,高优先级进程可以抢占低优先级的CPU资源,先执行高优先级任务。但是存…

x265码控分析

D和R的关系 高分辨率量化 均匀量化:量化区间 ‘ Δ k y k − y k − 1 ‘ \Delta_ky_k-y_{k-1} ‘Δk​yk​−yk−1​‘,近似为常数;p(x)为信源概率密度函数,且 ‘ Δ k ‘ \Delta_k ‘Δk​‘的大小相对于p(x)的变化率充分小&…

电力NLP:指令票规范识别

文章目录 任务目的想法讲解数据集介绍1电气主语2操作任务判断数据集3操作内容判断数据集4错误词数据集 解法讲解程序、数据集下载链接 任务目的 识别调度指令票(或者其它操作票)是否规范。 想法讲解 按石第2014—16号定值单投入石双西线161开关6区保护…

突发!ChatGPT王炸级更新!支持GPT-4联网 Code Interpreter!

4月30日,OpenAI官方悄悄发布了联网版GPT-3.5。虽然名字变了,但使用体验却是换汤不换药,还是那套。 然而,万万没想到的是,刚过去没几天,昨天5月4日,鱼哥发现自己的Plus账号竟然多了一些能力&…