iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >掌握MySQL密码管理、存储引擎及事务相关知识
  • 577
分享到

掌握MySQL密码管理、存储引擎及事务相关知识

2024-04-02 19:04:59 577人浏览 独家记忆
摘要

下文主要给大家带来Mysql密码管理、存储引擎及事务相关知识,希望这些内容能够带给大家实际用处,这也是我编辑mysql密码管理、存储引擎及事务相关知识这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

下文主要给大家带来Mysql密码管理、存储引擎及事务相关知识,希望这些内容能够带给大家实际用处,这也是我编辑mysql密码管理、存储引擎及事务相关知识这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

1.MYsql密码管理:

1.1修改用户密码:

(1) SET PASSWord [FOR 'user'@'host'] = PASSWORD('cleartext password');
(2) UPDATE mysql.user SET Password=PASSWORD('cleartext password')  WHERE User='USERNAME' AND Host='HOST';
(3) mysqladmin -uUSERNAME -hHOST -p  password 'NEW_PASS'
生效:FLUSH PRIVILEGES

1.2 忘记管理员密码的解决办法:

(1) 修改配置文件,添加一下内容:
    skip-grant-tables    #忽略用户名密码验证
    skip-networking      #禁止远程登录提高安全性,注添加后仅能在数据库本机操作,如不能本机操作不要添加。云主机一般限制仅能办公区域ip访问即可。
    重启mysqld服务
(2) mysql直接登录,通过UPDATE命令修改管理员密码;
(3) 移除第一步添加的两个选项,以正常方式启动mysqld进程;

2.MySQL常用存储引擎:

2.1 INNODB类

     擅长处理大量的短期事务,数据存储于表空间(table space)中

特点:

    1. 所有innodb表的数据和索引放置于同一个表空间中
           表空间文件:datadir定义的目录下
           数据文件(存储数据和索引):tbl_name.ibd,tbl_name.frm(表格式定义文件)
    2.  基于mvcC来支持高并发,支持所有的四个隔离级别,默认级别为REPEATABLE READ;间隙防止幻读。
    3.  使用聚集索引
    4.  支持自适应hash索引
    5.备份:支持热备

MariaDB 默认使用XtraDB (innodb增强版,percona组织研发)

特点:

   1.数据存储:表空间
   2.并发:MVCC(多版本并发控制),间隙锁
   3.索引:聚集索引,辅助索引
   4.性能:预计操作、自适应hash、插入缓存区
   5.备份:支持热备(XtraBackup备份工具

2.2MYISAM

    支持全文索引(FULLTEXT index)、压缩、空间函数(GIS);但不支持事务,不支持行级锁 ,崩溃后无法安全恢复(Aria myisam的增强版支持崩溃安全恢复)

适用场景:只读(或者写较少)、表较小(可接受长时间进行修复操作)

文件:

    tab1_name.frm:表格式定义
    tab1_name.MYD:数据文件
    tab1_name.MYI:索引文件

特性:

    加锁和并发:表级锁
    修复:手工或自动修复、但可能丢失数据
    索引:非聚集索引
    延迟更新索引键:
    压缩表

3.MySQL事务:

事务:一组原子性的sql查询,或者说一个独立的工作单元。

3.1 ACID测试

     A:原子性,   最小不能分割的单元,要么全部都成功执行,要么全部失败后回滚。
     C:一致性,    数据总是从一个一致性状态转到另一个一致性状态
     I:隔离性,   一个事务所做出的操作在提交之间,是不能为其他所见的;隔离有多种隔离级别,隔离性越高安全性越高,同时支持并发的能力越差。
     D:持久性,   一旦事务提交,其所作的修改会永久保存于数据库

3.2 事务处理过程:

    启动事务:start  transaction;    

    存档点:savepoint  pointname

           rollback  to  pointname  回到存档点

           release  pointname  删除存档点

    结束事务:1.commit 提交 2. rollback 回滚

建议:显示请求和提交事务,不要使用自动提交功能,自动提交会产生大量磁盘IO影响性能。

方法:set SESSION autocommit=0;           show variables like '%auto%';确认

3.3 事务的隔离级别:

查看级别:show global variables  like '%tx_isolation%';

    READ-UNCOMMITTED    #(读未提交)
    READ-COMMITTED    #(读提交)
    REPEATBLE-READ    #(可重读)默认
    SERIALIZABILE     #(可串行化)

以上事务级别对应的问题:

      脏读:即读别人未提交的数据
      不可重复读:同一事务中改动之前读一次,改之后读一次,两次读到的信息不一致(由于查询时系统中其他事务修改的提交而引起的)
      幻读:别人已经修改提交了,自己在修改前已打开的事务中看到是修改之前的信息。提交事务后会发现信息已改变。
      加锁读:一个事务做出数据的修改未提交时,其他事务无法提交。

死锁:            两个或多个事务在同一资源相互占用,并请求锁定对方占用的资源的状态。

事务日志:   事务日志的写入类型为“追加”,因此其操作为顺序IO,此日志也被称为预写式日志(write ahead logging)ib_logfile

对于以上关于MySQL密码管理、存储引擎及事务相关知识,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的数据库,相信你会喜欢上这些内容的。

您可能感兴趣的文档:

--结束END--

本文标题: 掌握MySQL密码管理、存储引擎及事务相关知识

本文链接: https://www.lsjlt.com/news/36737.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql拒绝访问怎么办
    mysql 出现拒绝访问的原因和解决方法:权限问题:授予用户适当的数据库或表访问权限。防火墙或安全组:允许对 mysql 端口(3306)的入站连接。密码错误:重置 mysql 密码或使...
    99+
    2024-05-20
    mysql
  • mysql怎么比较日期大小
    mysql 中比较日期大小的方法包括:直接比较两个日期,使用 、= 运算符。使用 date_format() 函数将日期转换为字符串,然后比较字符串大小。使用 str_to_date()...
    99+
    2024-05-20
    mysql
  • mysql怎么加锁
    mysql中加锁是一种确保数据并发访问一致性的机制。加锁方式有:表级锁(对整个表加锁)和行级锁(对特定行加锁)。加锁类型有共享锁(允许读取但禁止修改)、排他锁(禁止读取和修改)和意向锁(...
    99+
    2024-05-20
    mysql 并发访问
  • mysql误删数据怎么恢复
    mysql误删数据可通过以下步骤恢复:停止数据库服务,防止数据覆盖。若开启binlog日志,可从中提取删除语句,再重新执行后将数据恢复。使用恢复工具修复表文件或恢复事务。从备份中恢复数据...
    99+
    2024-05-20
    mysql
  • 怎么判断mysql安装成功
    成功安装 mysql 的方法:检查命令行界面版本号;连接到 mysql 服务器,输入 "mysql -u root -p";创建数据库,输入 "create database test;...
    99+
    2024-05-20
    mysql linux macos 防火墙配置
  • mysql怎么修改表名
    如何修改 mysql 表名:检查当前表名:show tables;运行 rename table 语句:rename table 旧表名 to 新表名;验证更改:show tables;...
    99+
    2024-05-20
    mysql
  • mysql删除的表怎么恢复
    mysql 中已删除表的恢复方法主要涉及以下步骤:检查 binlog 日志以获取删除事务信息;使用数据恢复工具扫描数据库文件;从备份还原表数据;或联系 mysql 支持寻求帮助。 My...
    99+
    2024-05-20
    mysql 数据丢失
  • mysql复合主键怎么写
    在 mysql 中编写复合主键:在 create table 语句中使用 primary key 约束并列出字段名称。复合主键的好处包括提高查询效率、保证数据完整性和强制数据顺序。注意选...
    99+
    2024-05-20
    mysql
  • 怎么查看mysql数据库版本
    如何查看 mysql 数据库版本?连接到数据库并执行查询:select version();检查命令行或 mysql workbench 中的服务器属性。 如何查看 MySQL 数据库...
    99+
    2024-05-20
    mysql linux
  • 怎么检测mysql安装成功
    要验证 mysql 安装是否成功,请执行以下步骤:检查系统服务是否正在运行。使用 mysql 命令行工具连接到服务器。创建一个测试数据库并使用它。在数据库中创建一个测试表。插入测试数据并...
    99+
    2024-05-20
    mysql linux
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作