首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL5.7 通过逻辑备份迁移到GreatSQL注意事项

    * GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。 一、背景概述 在将数据库从MySQL 5.7迁移到GreatSQL8.0.32时,由于数据量较小且关注安全性,决定使用mysqldump执行逻辑备份,并将数据导入GreatSQL。但在备份时采用了备份全库(--all-databases)的方式,在导入GreatSQL后,修改用户密码时出现错误。这是因为mysqldump备份时包括了mysql系统库,而MySQL 5.7中的mysql系统库采用了MyISAM存储引擎,而GreatSQL的mysql系统库采用了InnoDB存储引擎。因此,在导入数据后,部分系统表被覆盖,导致了错误的出现。 二丶问题复现 1.部署2个实例 部署MySQL 5.7与GreatSQL 8.0.32,具体步骤省略 2.MySQL 创建测试数据 通过sysbench创建10张表 $ sysbench lua/oltp_read_write.lua --mysql-db=sysbench --mysql-host=192.168.1.162 --mysql-port=6003 --mysql-user=root --mysql-password=greatsql --tables=10 --table_size=5000 --report-interval=2 --threads=10 --time=600 --mysql-ignore-errors=all prepare 3.MySQL 创建测试用户 mysql> create user test1@'%' identified by 'greatsql'; Query OK, 0 rows affected (0.01 sec) mysql> grant all on *.* to test1@'%'; Query OK, 0 rows affected (0.01 sec) 4.MySQL进行全库备份 $ /mysql57/svr/mysql/bin/mysqldump -uroot -pgreatsql -h192.168.1.162 -P6003 --single-transaction --set-gtid-purged=OFF --all-databases > all.sql 5.GreatSQL导入备份数据 greatsql> source all.sql; 在导入过程中有如下报错,从这里可以看出导入时有系统表被导入,并且部分系统表不支持被修改:

    01

    centos搭建lnmp

    在centos上面搭建当今性能相对较好的一套服务器环境LNMP。即:Linux + Nginx + MySQL + Php 。由于 Nginx 比Apache更轻巧一些,而且在nginx的官方网站上面对于nginx处理的多并发量是100000。所以,在现在网站会面临这种大并发量的时候,使用Nginx 来作为服务器程序确实是一个不错的选择,不过如果使用LAMP环境的话,对于php的执行过程是使用mod-php这样的一个apache 模块,但使用LNMP的话,是使用一个叫做php-fpm 的一个单独的进程来完成处理,而且,Nginx 本身也是一个独立的进程,所以对资源占用就比LAMP环境下多了一个进程。 配置mysql mysql5.5解压出来你会发现找不到configure文件,我们只能用cmake,默认linux系统是没有cmake,所以会显示找不到cmake command,解决办法:yum install cmake 下载Mysql:wgethttp://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.14.tar.gz 增加用户组 :/usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql 基本操作:tar xvf mysql-5.5.14.tar.gz cd mysql-5.5.14/ 安装所需要系统库相关库文件:yum install -y gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*(当然一些重复的会自动忽略) 执行命令:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DMYSQL_USER=mysql 参数等说明: DCMAKE_INSTALL_PREFIX=/usr/local/mysql#mysql安装的主目录,默认为/usr/local/mysql DMYSQL_DATADIR=/usr/local/mysql/data#mysql数据库文件的存放目录,可以自定义 DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock#系统Socket文件(.sock)设置,基于该文件路径进行Socket链接,必须为绝对路径 DSYSCONFDIR=/etc #mysql配置文件 my.cnf的存放地址,默认为/etc下 DMYSQL_TCP_PORT=3306#数据库服务器监听端口,默认为3306 DENABLED_LOCAL_INFILE=1#允许从本地导入数据 DWITH_READLINE=1 #快捷键功能 DWITH_SSL=yes #支持 SSL DMYSQL_USER=mysql#默认为mysql //下面3个是数据库编码设置 DEXTRA_CHARSETS=all#安装所有扩展字符集,默认为all DDEFAULT_CHARSET=utf8#使用 utf8 字符 DDEFAULT_COLLATION=utf8_general_ci#校验字符 //下面5个是数据库存储引擎设在 DWITH_MYISAM_STORAGE_ENGINE=1#安装 myisam 存储引擎 DWITH_INNOBASE_STORAGE_ENGINE=1#安装 innodb 存储引擎 DWITH_ARCHIVE_STORAGE_ENGINE=1#安装 archive 存储引擎 DWITH_BLACKHOLE_STORAGE_ENGINE=1#安装 blackhole 存储引擎 DWITH_PARTITION_STORAGE_ENGINE=1#安装数据库分区 编译过程中如果会出现以下错误 mysqld.cc: In function ‘void handle_connections_s

    02
    领券