2019/04/04 MYSQL安装和基本操作

本文介绍了在CentOS 6上安装MariaDB的方法,包括源码编译安装、使用rpm和yum安装以及二进制格式安装。同时,文章还详细讲解了数据库服务的配置过程和服务管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
kb知识库,en英文版
在centos6上是5.1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
插件是存储引擎,可以根据情况,来调换存储引擎,模块化的
在这里插入图片描述
mariadb的安装方法,有三种
1,源码编译安装
源码编译也有两种方式。
传统的./configrue makeinstall
还有semet
2.rpm和yum
3,二进制的格式安装,(无非就是源码编译好打包在一个目录里,我们只要解包到一个文件里,配置文件配好就可以使用

先来看比较简单的,rpm包安装
在这里插入图片描述
在这里插入图片描述
安装好可以查看以下
在这里插入图片描述
服务脚本名称
在这里插入图片描述
数据库的主程序
在这里插入图片描述
将来存放用户数据的,数据库所在位置
在这里插入图片描述
编译安装或者二进制安装你可以另外指定这个目录
设置开机启动,启动服务

在这里插入图片描述
3306端口已经打开
在这里插入图片描述
现在就可以用数据库客户端来连接了
启动,会生成数据文件
sock用于本地通讯的,unix的本机套接字
跨网络急需要tcp的套接字文件

在这里插入图片描述
现在可以用mysql专门的客户端工具连接了
在这里插入图片描述
在这里插入图片描述
下面就是能执行的操作命令
在这里插入图片描述
想知道现在系统里有没有现成的数据库,show
可以查看系统中所有的数据库列表

在这里插入图片描述
可以在mysql里执行linux命令或者!也是可以的
在这里插入图片描述
在这里插入图片描述
status得到系统的状态信息
在这里插入图片描述
在这里插入图片描述
use指定当前操作的数据库
在这里插入图片描述
改完执行用status来看一下
在这里插入图片描述
current user:是mysql自身的用户账号,在mysql中也有root账号
@跟上主机名,表示这个用户在那台主机上登录

status也可以用简写实现 \s
在这里插入图片描述
在这里插入图片描述
退出s
在7上的安装,7上已经变了,叫mariadb在这里插入图片描述
在这里插入图片描述
mariadb就是客户端包
在这里插入图片描述
服务没启动所以socket文件没法生成
在这里插入图片描述
在这里插入图片描述
当你第一次启动的时候,会生成相关的数据库文件
服务名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
mysql工作原理是基于单进程,多线程的原理的
pstree -p

在这里插入图片描述
登录mysql查看状态
在这里插入图片描述
一旦启动会生成数据库文件
这三个文件夹就是数据库文件

在这里插入图片描述
在这里插入图片描述
比centos6,mysql5.1多了一个
在这里插入图片描述
information_schema这个是虚拟内存的数据库,在磁盘上是看不到的
在这里插入图片描述
所有的文件的所属者和组是mysql
既然文件夹是数据库,能否复制一个文件夹作为数据库

在这里插入图片描述
在这里插入图片描述
在mysql数据库里,这些数据就是放在文件夹里的
以后要复制的话,也需要保证数据库每个表都在一个时间点的情况下,期间没有进行修改过
那么同一时间如何保证,因为大文件拷贝总要花费时间,
第一,把mysql服务停了(但是一旦数据库跑起来,生产中是停不下来的

在这里插入图片描述
安装好数据库后,好像发现任何人都能随便连接数据库
在这里插入图片描述
查看有多少表
在这里插入图片描述
在这里插入图片描述
显示比较乱,可以整理整理
在这里插入图片描述
可以换成按竖的方式显示,\G
在这里插入图片描述
每个字都是一列,以前的二维表都是横着
在这里插入图片描述
可以删除数据库
在这里插入图片描述
为什么王用户可以随意删除
在这里插入图片描述
因为默认是用root登录的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
事实上,数据库没有这些账号
切换到root登录,查看用户表

在这里插入图片描述
user表,存的就是当前mysql数据库里的用户信息
在这里插入图片描述
6行,代表6条记录,代表6个用户
在这里插入图片描述
可以找出三个列来显示

在这里插入图片描述
之前用的xyz和aaa都是匿名账号,因为密码是空的,所以就随便登录
MySQL刚装好默认是不安全的

在这里插入图片描述
这是个系统自带的脚本
在这里插入图片描述
在这里插入图片描述
是否删除匿名账号,是的,匿名账号应该删除
是否禁用rooy远程登录,这个无所谓

在这里插入图片描述
一般测试库你在测试的时候随便用,实际生产的情况下就需要删除的
在这里插入图片描述
加载特权表,privilege特权,就是是否让之前的设置生效
在这里插入图片描述
完成s
在这里插入图片描述
在这里插入图片描述
之前不安全登录,都需要用密码了,匿名账号也不能登录
在这里插入图片描述
在这里插入图片描述
只要密码一样,加密起来就一样
每个用户名是用用户名和加主机加@连接起来组合而成的,所以,上面这个是4个账号,
username好理解,host就是允许你在后台哪台机器上登录,
上面4个,root是不能用远程登录的,所以mysql刚安装好也不涉及到多安全的东西

这个程序在6,7上都可以使用,起到安全的脚本,一般安装完数据库都需要安全
在这里插入图片描述
在别的机器上就不允许连接,因为现在只允许本地连接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
mysqldump是重点要掌握的工具,备份工具,利用mysql协议,向服务器发起请求,把查询出来的结果放到文本文件里

这两个都是服务器端程序
在这里插入图片描述
在这里插入图片描述
查看mariadb在安装包的时候是否也是跑脚本的
在这里插入图片描述
**
-oid号可以不唯一。就是创建账号的时候,如果有这个id号,也可以创建
-M表示不创建家目录
-d 又指定了家目录路径
-N 不创建和它同名的组作为主组因为已经用-g指定主组了
确保在其他版本也是这么生成的所以加了很多选项**
在这里插入图片描述
在这里插入图片描述
也是来自服务器server包的,这个程序是用来多实例,
一个机器上这个软件跑多份,一个软件跑好几次,每一个就称为一个实例

在这里插入图片描述
默认都是单实例
在这里插入图片描述
下面是多实例
在这里插入图片描述
有很多都是多实例的
比如,notepad,qq

在这里插入图片描述
以前是把qq目录复制几份才能打开几个 实例
在一台电脑上实现主从复制,就是安装多个mysql实现多实例
有的企业安装两个版本的mysql,但是mysql默认3306,不可能两个版本都用,所以一个版本就需要用另外一个/

在这里插入图片描述
正则表达式的?,是代表前面的字符有一个或0个
在这里插入图片描述
在这里插入图片描述
也可以用脚本来执行
在这里插入图片描述
还有一种方式,把脚本稍微改下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
有一个source命令
在这里插入图片描述
就执行成功了
在这里插入图片描述

客户端命令
在这里插入图片描述
这种是服务器端命令,就是把这个命令发送到服务器,让服务器跑一遍命令
所以服务器端命令需要加分号;。非服务器端命令不需要

在这里插入图片描述
更改用户的提示符,类似ps1
在这里插入图片描述
在这里插入图片描述
、临时的修改,存不住
u是用户名
D是当前日期
rms时间格式

在这里插入图片描述
想要保存下来,如何做,就需要修改配置文件
client客户端配置文件

在这里插入图片描述
在这里插入图片描述
client是通用客户端
mysql-clients是mysql客户端
如果是mysqlclient,刚才的是 全局,现在的是针对mysql

在这里插入图片描述
就可以把内容加到mysql语句块里
在这里插入图片描述
man sql 查看帮助
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
现在查看是否起作用
在这里插入图片描述
把当前的删除,就又恢复了
在这里插入图片描述
在这里插入图片描述
y
在这里插入图片描述
也可以用选项的来修改,但是是临时性的
在这里插入图片描述
在这里插入图片描述
还可以写一个专门的变量里
在这里插入图片描述
就需要写到一个配置文件里
在这里插入图片描述
export是环境变量
在这里插入图片描述
也发生变化了
在这里插入图片描述
mysql的客户端选项还是比较丰富的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不支持tab键补全
在这里插入图片描述
在这里插入图片描述
但是实际上是tab键可以补的,这些都是列名
在这里插入图片描述
在这里插入图片描述
默认是在这个文件夹的,如果默认文件不在这里,就需要用-S指定路径
在这里插入图片描述
在这里插入图片描述
压缩一般用于远程网络,本地不用压缩
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以删除多个数据库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
-V看看当前系统是上面版本的
还可以打印程序的默认选项,如果加了什么格式都会显示出来的

在这里插入图片描述
在这里插入图片描述
如果在本机通讯就是用文件来,如果跨网络就可以指定tcp3306 的端口‘
在本机通讯省去解封装

在这里插入图片描述
在这里插入图片描述
version,数据库版本号
在这里插入图片描述
在这里插入图片描述
刚才改的是mysql客户端的配置文件
在这里插入图片描述
还有一个配置文件
mysqld这个语句块存放的是服务器端的配置,

在这里插入图片描述
只要进程起来了,就会生成一个进程文件
在这里插入图片描述
在这里插入图片描述
如果进程停的话,socket文件和pid进程文件都会自动删除的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在数据库配置里认为_ 和-是相同的
在这里插入图片描述
在这里插入图片描述
放在/etc/my.cnf是所有实例都有效
/etc/mysql/my.cnf 放在这里是全局性的设置
SYSCONFDIR/my.cnf
$MYSQL_HOME/my.cnf 针对特殊实例生效的
–defaults-extra-file=path 敲命令的时候,加的参数选项
~/my.cnf 针对特定用户的

在这里插入图片描述
在这里插入图片描述
也可以在这里设置,因为是包含的关系
mysql在执行的时候加了一些参数选项,可以认为是变量的值
在这里插入图片描述
在这里插入图片描述
程序找不到是因为mysqld所在的path路径尴尬
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3306端口没有了为什么还能连接,是因为走的是本地的sock文件
在这里插入图片描述
要维护数据库就可以用这个方法,临时的让用户不能连接
在这里插入图片描述
删除哪一行,重启服务器,3306端口又回来了
我们设置服务器,都是在mysqld设置的,服务器和客户端配置,所以用的时候不要搞坏了
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值