升级数据库时,通常需要将旧版本中的数据同步到新版本的mysql服务中。对于MyISAM格式的,通常直接copy数据文件,然后修改文件权限(chown -R mysql:mysql data)就能解决问题。但是对于innodb格式的,这种方式是行不通的。于是我写了一个工具方便数据的备份。
操作步骤如下:
1、启动新的mysql服务
#:bin/mysqld_safe --port=3308 --socket=/tmp/mysql2.sock &
2、同步mysql服务权限【可选】
//同步权限数据
#:mysqldump --opt mysql | mysql -P 3308 --socket=/tmp/mysql2.sock mysql
//在每一次的升级过程中,mysql_upgrade这个命令我们都应该去执行,它通过
//mysqlcheck命令帮我们去检查表是否兼容新版本的数据库同时作出修复,
//还有个很重要的作用就是使用mysql_fix_privilege_tables命令去升级权限表。
#: mysql_upgrade -P 3308 --socket=/tmp/mysql2.sock
2、同步应用数据
TO_MYSQL_SOCK=/tmp/mysql2.sock
TO_MYSQL_PORT=3308
dataList=`mysql -s -e "show databases"`
for databaseName in ${dataList[*]}
do
# 过滤掉不需要同步的表
case $databaseName in Database|mysql|test|performance_schema|information_schema)
echo "ignore Database:"$databaseName ;;
*) echo "创建数据库:"$databaseName
mysqladmin -P ${TO_MYSQL_PORT} --socket=${TO_MYSQL_SOCK} create ${databaseName}
mysqldump --opt ${databaseName} | mysql -P ${TO_MYSQL_PORT} --socket=${TO_MYSQL_SOCK} ${databaseName}
;;
esac
done
3、关掉旧数据库服务,启用新数据库服务
常用指令:
授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.%' IDENTIFIED BY '1' WITH GRANT OPTION;
编码集:
SHOW VARIABLES LIKE 'character_set_%';
二进制日志清除:
mysql > flush logs;
mysql > reset master;
删除没用的密码
delete from user where password ="";
FLUSH PRIVILEGES;
初设密码:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h server-171 password 'new-password'
5.6.10版本编译(默认字符utf8)
cmake -DCMAKE_INSTALL_PREFIX=/opt/app/mysql-5.6.10 \
-DMYSQL_DATADIR=/opt/app/mysql-5.6.10/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all
慢查询语句(my.cnf)
long_query_time=1
log_slow_queries= /usr/local/mysql/var/slow_query.log
修改文件权限
chown -R mysql:mysql ${dbname}
分享到:
相关推荐
MySQL到ClickHouse的历史数据同步是一项常见的任务,尤其是在大数据分析场景中。ClickHouse是一个高性能的列式数据库管理系统(Column-Oriented DBMS),适用于在线分析处理(OLAP)和实时数据分析。MySQL作为流行的...
- **数据库同步**:比较并同步不同数据库之间的差异,便于版本控制和团队协作。 2. **其他MySQL管理工具**: - **MySQL Workbench**:官方提供的全面开发、设计和管理工具,具有模型化、SQL开发和服务器管理等...
│ 5_MySQL其他常用命令讲解.mp4 │ 6_MySQL操作符和常用函数.mp4 │ 7_MySQL常用字符串和日期函数.mp4 │ delete.txt │ MySQL高级DBA大作业1.docx │ 作业.docx │ ├─新版MySQL DBA综合实战班 第04天 │ 1_课后...
MySQL主备复制是一种常用的数据冗余和高可用性解决方案,它允许数据在多个服务器之间实时同步,确保在主服务器故障时能快速切换到备用服务器,从而维持服务的连续性和数据完整性。这一技术主要应用于大型数据库系统...
1. **主从复制(MySQL Replication)**:在主服务器(master)上启用binlog,然后将binlog文件传输到从服务器(slave),使得从服务器能够同步主服务器上的所有数据更改,从而保持数据一致性。server_id配置用于区分...
- 监控工具:利用`SHOW STATUS`、`SHOW VARIABLES`等命令检查数据库状态,或使用第三方工具如MySQL Workbench、Percona Toolkit等进行性能监控。 10. **安全性**: - 安全实践:设置强密码策略,定期更新MySQL...
2. InnoDB存储引擎增强:InnoDB是MySQL最常用的事务处理引擎,新版本中对InnoDB进行了大量优化,包括支持更大的表空间、更快的行锁定以及更高效的索引操作。 3. 新的安全功能:MySQL 8.1.0增强了安全性和认证机制,...
6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器...
MySQL 8.0是当前广泛使用的开源关系型数据库管理系统(RDBMS)的最新稳定版本。这个版本带来了许多新特性和改进,旨在提高性能、安全性和易用性。本参考手册包含了MySQL 8.0的详细信息,包括安装、配置、优化、查询...
2. **安装与配置**:包括在不同操作系统上(如Windows、Linux、MacOS)的安装步骤,以及如何配置MySQL服务器和客户端工具。 3. **数据库和表的概念**:解释数据库和表的基本概念,以及如何创建、删除和修改数据库及...
最后,MySQL 5.5版本还增强了诊断和监控工具,如`SHOW ENGINE INNODB STATUS`命令可以查看InnoDB存储引擎的状态,帮助开发者和管理员排查问题。 综上所述,`mysql.h` 文件在MySQL 5.5版中扮演着核心角色,它为...
06-常见运维同步工具介绍.avi 07-drbd的部署及ip配置规划.avi 08-drbd软件的安装配置准备.avi 09-创建同步的分区实践drbd.avi 10-drbd环境分区说明及分区命令.avi 11-实际安装drbd软件实战.avi 12-drbd相关配置列表...
6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器复制中的...
**Django常用命令** Django提供了丰富的命令行工具,如: 1. `django-admin startproject [project_name]`:创建一个新的Django项目。 2. `python manage.py runserver`:启动开发服务器,用于本地测试。 3. `...
4. 数据同步与迁移:SQLyog具有数据同步工具,可以比较并同步两个数据库之间的差异,确保数据一致性。同时,它还支持数据库的备份和恢复,以防止数据丢失。 5. 用户管理:在SQLyog中,可以轻松创建、修改和删除...
`tar`命令是Linux下用于处理归档文件的工具,`-zxvf`是其常用的参数组合,分别代表了不同的功能: - `z`:表示解压gzip格式的压缩文件。 - `x`:表示解压操作。 - `v`:表示详细模式,显示解压过程中的详细信息。 - ...
在MySQL数据备份与迁移中,`mysqldump`是一个常用的工具。其`--master-data`参数可以指定备份时包含二进制日志的位置,对从库配置很有帮助。当设置为1时,mysqldump导出的SQL文件会包含`CHANGE MASTER TO`命令,指向...
6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器复制中的...
本篇文章将基于提供的文件信息,深入解析线上问题调查中常用的Linux性能检测工具及JVM性能相关命令,并提供详细的解释与应用场景。 #### Linux性能检测工具 **1. CPU性能检测** ##### 基本概念 - **上下文切换**...