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

news2024/11/18 11:17:38

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.conf

mysql   soft    nproc   65535
mysql   hard    nproc   65535

mysql   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 programs

export 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.coloradmin.cn/o/496361.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【前端面试题】深拷贝的终极实现

大厂面试题分享 面试题库 前后端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 web前端面试题库 VS java后端面试题库大全 引子 通过本文可以学习到深拷贝的三种写法的实现思路与性能差异 首先,我们要理…

Hystrix 简单聊聊断路器/熔断器

本文首发自「慕课网」,想了解更多IT干货内容,程序员圈内热闻,欢迎关注"慕课网"! 作者:风间影月|慕课网讲师 什么是Hystrix Hystrix 在SpringCloud中负责服务熔断服务降级的作用。 Hystrix 存在的目的也是…

从 Elasticsearch 到 Apache Doris,10 倍性价比的新一代日志存储分析平台

作者介绍:肖康,SelectDB 技术副总裁 导语 日志数据的处理与分析是最典型的大数据分析场景之一,过去业内以 Elasticsearch 和 Grafana Loki 为代表的两类架构难以同时兼顾高吞吐实时写入、低成本海量存储、实时文本检索的需求。Apache Doris…

114-Linux_mysql基本操作

文章目录 一.数据库的基本操作1.数据库的登录及退出(1)连接数据库:(2)退出数据库 2.查看所有数据库3.显示时间4.显示数据库版本5.创建数据库6.查看创建数据库的语句7.查看当前使用的数据库8.查看当前用户9.使用某个数据库10.删除数据库 一.数据库的基本操作 1.数据…

训练计划安排(练一休一训练分化+倒金字塔训练法)

目录 练一休一训练分化每次训练的组数12-15组 (4-5个动作)QA 倒金字塔训练法倒金字塔热身正式组常见误区: 训练补剂bcaa咖啡因肌酸蛋白粉 如何降低皮质醇水平如何提升睾酮水平文献出处睡眠8h摄入适量脂肪(0.8g每公斤体重&#xff…

【机器学习】集成学习—Boosting—GBM(Gradient Boosting Machine)解析

【机器学习】集成学习—Boosting—GBM(Gradient Boosting Machine)解析 文章目录 【机器学习】集成学习—Boosting—GBM(Gradient Boosting Machine)解析1. 介绍2. Boosting2.1 1. 强 / 弱学习器2.1.2 AdaBoost 3. GBM3.1 GBM 特例…

如何利用ChatGPT进行论文润色-ChatGPT润色文章怎么样

ChatGPT润色文章怎么样? ChatGPT可以润色文章,使用其润色功能可以为用户提供更加整洁、清晰、文采动人的文本。但需要注意以下几点: 需要保持文本的一致性和完整性。当使用ChatGPT进行润色时,需要注意保持文本的一致性和完整性。…

单调栈的学习

文章目录 单调栈的学习什么是单调栈?单调栈模板暴力解法单调栈解法 单调栈的简单变形1.[496. 下一个更大元素 I](https://leetcode.cn/problems/next-greater-element-i/)2.[739. 每日温度](https://leetcode.cn/problems/daily-temperatures/)3.[503. 下一个更大元…

Kali Linux 使用远程桌面连接——xrdpxfce

[笔者系统版本] [Kali]: Kali Linux 2023.1 [Kernel]: kernel 6.1.0 [Desktop]: Xfce 4.18.1 1. 前言 在 Windows 中我们会经常使用到远程桌面这样便利的工具,让我们随时随地都可以使用自己想要使用的电脑,或者同时使用多台设备,那么本文就将…

open3d 源码阅读image_processing.py

目录 1. open3d.geometry.Image和numpy互转 2. 对open3d.geometry.Image进行高斯过滤 3. 高斯金字塔过滤 4. sobel过滤 5. 可视化o3d.geometry.Image 1. open3d.geometry.Image和numpy互转 import numpy as np import matplotlib.pyplot as plt import matplotlib.image a…

Midjourney从入门到精通

前言 什么是AI绘画 AI 绘画,顾名思义就是利用人工智能进行绘画,是人工智能生成内容(AIGC)的一个应用场景。其主要原理就是收集大量已有作品数据,通过算法对它们进行解析,最后再生成新作品,而算…

vue框架快速入门

vue 1、第一个Vue程序1.1、什么是Vue程序1.2、为什么要使用MVVM1.3、Vue1.4、第一个vue程序 2、基础语法2.1、v-bind2.2、v-if, v-else2.3、v-for2.4、v-on 3、Vue表单双绑、组件3.1、什么是双向数据绑定3.2、在表单中使用双向数据绑定3.3、什么是组件 4、Axios异步…

NixOS Legacy Boot(MBR) VmwareWorkstation安装向导

NixOS & Legacy Boot(MBR) VmwareWorkstation安装向导 目录 NixOS & Legacy Boot(MBR) VmwareWorkstation安装向导1. 下载镜像2. 创建空白虚拟机3. 使用命令行安装 NixOS3.1 Legacy Boot(MBR)3.2 格式化 4. configration.nix 配置文件5. 部署NixOS6. 部分教育站镜像源集…

Maven 3.9.1下载安装配置一条龙(无压力)亲测

这里写自定义目录标题 前言一、下载 Apache Maven 3.9.11.1、请先检查自己的IDEA是否有这个条件,是否兼容1.2、Maven下载 二、Windows安装配置Maven2.1、解压2.2、新建 repository 本地仓库2.3、配置环境变量MAVEN_HOME 软件路径M2_HOME 本地仓库路径配置Path2.3.1新…

关于maven

一、maven是什么 一个java项目构建工具 二、maven的作用 (1)依赖管理 不同框架整合,互相依赖jar包版本不同,版本不一样,程序跑起来就会报错。用maven管理jar包。 (2)跨平台构建项目 linux服…

数字信号处理3:A/D、D/A转换

信号这个东西,我们是实际应用中用的大多都是模拟信号,比如说语音、地震、雷达、声纳信号,这些都是模拟信号,但是,计算机想要通过数学方法处理模拟信号,就要先将模拟信号转换成具有有限精度的数字序列&#…

L4公司进军辅助驾驶,放话无图也能跑遍中国

作者 | Amy 编辑 | 德新 高阶智能驾驶走向规模量产,高精地图成为关键的门槛之一。今年,多家车企和智驾公司都喊出「不依赖高精地图,快速大规模落地」的口号。 华为、小鹏、元戎以及毫末等,可能是最快在国内量产 无高精图智…

TCP/IP网络编程(一)

TCP/IP网络编程读书笔记 第1章 理解网络编程和套接字1.1 理解网络编程和套接字1.1.1 构建打电话套接字1.1.2 编写 Hello World 套接字程序 1.2 基于Linux的文件操作1.2.1 底层访问和文件描述符1.2.2 打开文件1.2.3 关闭文件1.2.4 将数据写入文件1.2.5 读取文件中的数据1.2.6 文…

AI仿写软件-仿写文章生成器

AI仿写软件:高效出色的营销利器 作为互联网时代的营销人员,我们不仅需要品牌意识,还必须深谙营销技巧。万恶的时限压力使得我们不得不在有限的时间内输出更多的文本内容,以便吸引更多的关注。那么,如何解决这个问题呢…

C++网络基础知识面试题2

目录 1、使用TCP的常见协议有哪些?使用UDP的常见协议有哪些?简单说几个 2、如何判断访问目标地址的网络是通的?如何简单地查看到目标地址的网络是否有丢包和抖动? 3、如果知道目标服务器的服务端口有没有开启? 4、…