mysql 5.0 怎么升级5.7
1、数据备份,若升级失败,可以快速恢复
数据备份分为两种方案,一种是备份数据库的整个文件夹 ;另一种是mysqldump导出文件(建议使用这种)。
2、备份过程说明
第一种备份方案说明,在数据库的配置文件中,假设datadir=/home/database/mysql,可使用cp命令复制整个/home/database/mysql文件夹,即可完成备份
第二种备份方案说明,mysqldump命令参考:
mysqldump -B 数据库名称1 数据库名称2 -u账号 -p密码 -P端口 > dbname.sql
参数-B,让导出的语句中包含建库语句
附:sql导出后,请查看导出的文件是否完成,如导出的文件中是否有数据库数据、文件是否正常导出完毕
2、安装数据库,这里是centos7下使用yum安装,快速显示过程
1)安装数据库软件
yum install http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm -y
yum install mysql-server -y
2)设置数据库的配置
vi /etc/my.cnf 参考的配置文件在下面中
3)建立数据库的存储目录
basepath='/home'
mkdir -p ${basepath}/database/mysql
chown -R mysql:mysql ${basepath}/database
chcon -R --reference=/var/lib/mysql ${basepath}/database
4)设置selinux的端口,若不使用selinux,请跳过这一步,或关闭selinux;
yum install mysql-server policycoreutils-python -y
semanage port -a -t mysqld_port_t -p tcp 数据库端口
5)启动
systemctl start mysqld
启动后,在mysql的log日志/var/log/mysql.log中会自动生成随机密码;
6)配置初始化密码,密码要复杂否则会提示失败,这里是随机键盘输入,请自行重新配置
mysql -uroot -p
>SET PASSWORD = PASSWORD('wejkxRFojklw23&22cc');
7)建立数据库,配置账号、密码
>use mysql
>grant select,update,insert,index,delete on *.* to '用户名'@'%' identified by '密码';
>grant select,insert,update,index,delete,create,drop,alter on 数据库名称.表名 to '用户名'@'%' identified by '密码';
>create database dbname charset utf8 COLLATE utf8_bin
3、配置文件my.cnf参考
[mysqld_safe]
log-error=/var/log/mysql.log
pid-file=/var/run/mysqld/mysqld.pid
[mysqld]
datadir=/home/database/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
#0、port
port=5398 #不使用默认端口
#1、usally used
lower_case_table_names=1 #忽略大小写
character-set-server=utf8 #设置默认数据库编码
innodb_file_per_table=1 #mysql5.7用innodb引擎,若没有特殊要求,建议使用这个引擎;这里是每个表一个数据文件
#2、High Available、high-performance
#innodb_read_io_threads=8 #若数据库的服务器cpu数量多,可以设置这个读取的cpu个数
#innodb_write_io_threads=8 #若数据库的服务器cpu数量多,可以设置这个写入的cpu个数
innodb_flush_log_at_trx_commit = 2 #加快写入速度
#innodb_buffer_pool_size = 20G ###innodb_缓存_池_大小,默认本机 的70%-80%,需要根据需要设置
#innodb_log_file_size=128M ### #加快数据写入速度
#3、mysql config limit
open_files_limit=65000 ###最大值为int整数,同时受服务器限制;用于控制打开的文件数
#4、mysql slave config
server-id=5231147 ###配置方法:随机字符+端口(若端口过大,只能改端口),最大值4,294,967,295 (参考:https://blog.csdn.net/z69183787/article/details/81169624)
log-bin-index = binlog.index ###binlog的索引文件
log-bin=binlog ###binlog日志文件
#relay-log=mysqld-relay-bin ###从服务器I/O线程将主服务器的二进制日志读取过来记录到从服务器本地文件,然后SQL线程会读取relay-log日志的内容并应用到从服务器。
expire_logs_days = 7 ###binlog清理时间
max_binlog_size = 512M ###binlog文件大小
#binlog-do-db=testdb ###不要在这里配置这个参数,容易出问题;请在从数据库进行配置
#5、slave config,only config in slave,not in master
#replicate-do-db=testdb ###若要备份哪个库,直接在这里写,一定不要在主库设置,(信息来源:mysql官网),配置好同步后,然后在主库建库,从库同时出现建库的信息
#6、报错要求修改过的参数
max_allowed_packet=200M ###有一次研发要求增加这个参数,上传文件限制;这个参数可以动态修改。
4、恢复数据
1)默认恢复mysqldump导出的数据;
恢复数据的命令是:mysql -u用户名 -p密码 -P端口 < dbname.sql
2)若使用备份整个文件夹的方式,可以在配置my.cnf的时候,将备份的 文件夹作为目录,mysql启动后,就可以看到数据。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:68
阅读量:147
阅读量:174
阅读量:91
阅读量:86