中继日志与二进制日志的格式相同,并且可以用mysqlbinlog读取 如果你没有备份主服务器,这里是一个创建备份的快速程序。所有步骤都应该在主服务器主机上执行。 10 操作加解锁 1. 发出该语句: mysql> FLUSH TABLES WITH READ LOCK; 2. 仍然加锁时,执行该命令(或它的变体): shell> tar zcf /tmp/backup.tar.gz /var/lib/mysql 3. 发出该语句并且确保记录了以后用到的输出: mysql>SHOW MASTER STATUS; MySQL数据库是世界上最流行的开源关系型数据库管理系统之一,其易用性、高效性和可扩展性使其在各种规模的应用中广泛使用。以下是对MySQL学习的一些关键知识点的总结: 1. **用户名和口令**:MySQL允许的用户名长度最多为16个字符,而Unix系统通常限制用户名为8个字符。在命令行上直接输入口令存在安全隐患,因此应避免。MySQL的身份验证通过三个用户表(Host, User, Password)进行,匹配主机名、用户名和正确的口令。 2. **授权表的更新**:对授权表(如user表)进行手动修改后,需要执行`FLUSH PRIVILEGES`或`mysqladmin flush-privileges`来使更改生效,否则改动不会立即应用,除非重启服务器。 3. **文件结构**:MySQL的表结构包括`.frm`文件(表定义),`.MYD`文件(数据),以及`.MYI`文件(索引)。理解这些文件对于备份和恢复至关重要。 4. **表大小限制**:MySQL表的最大尺寸约为4GB。可以使用`SHOW TABLE STATUS`或`myisamchk -dv`命令检查表的大小。 5. **性能测试**:`benchmark()`函数用于测试MySQL的性能,例如`SELECT benchmark(1000000,1+1)`可以衡量执行特定表达式的速度。 6. **表维护**:`myisamchk`是一个强大的工具,用于检查、修复和优化MyISAM表。在描述模式下运行(`-d`选项)不会改变表,可以安全地获取表的状态。 7. **日志系统**:中继日志(Relay Log)和二进制日志(Binary Log)的格式相同,都用于复制和故障恢复。`mysqlbinlog`工具可以读取这两种日志。 8. **数据库备份**:在没有主服务器备份的情况下,可以执行以下步骤创建备份: - 使用`FLUSH TABLES WITH READ LOCK`锁定所有表,防止数据变化。 - 将数据库目录打包(例如:`tar zcf /tmp/backup.tar.gz /var/lib/mysql`)。 - 获取主服务器的二进制日志位置(`SHOW MASTER STATUS`)以进行后续恢复操作。 - 使用`UNLOCK TABLES`解除锁定。 9. **安全性**:使用通配符“%”和“_”可以匹配不同的主机名或IP地址,但要注意这可能导致任何主机都能连接到服务器。空白的Host值等同于“%”,空白的User值则意味着匿名用户。 10. **权限管理**:通过`GRANT`和`REVOKE`命令可以控制用户对数据库、表或特定操作的访问权限。`GRANT ALL`将授予所有权限,而`REVOKE`则可以撤销权限。 以上就是MySQL学习中的主要知识点,包括用户认证、表结构、日志系统、性能评估、备份策略以及权限管理。了解并熟练掌握这些概念,对于成为一个合格的MySQL数据库管理员至关重要。在实践中不断探索和优化,能进一步提升数据库的性能和稳定性。
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助