暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
mysql相关命令.txt
55
2页
1次
2023-12-04
免费下载
mysql 数据库存放的路径以及安装路径
1.查看 mysql 的存放路径
1.查看数据库的存放路径
进入 mysql 终端
mysql>show variables like '%datadir%';
2.查看文件安装路径
[root@hadoop01 etc]# whereis mysql
## docker 中路径对应
docker inspect mysql
[root@hadoop01 mysql]# ps -ef|grep mysql
/usr/sbin/mysqld
--basedir=/usr
#文件存放目录
--datadir=/var/lib/mysql
#mysql 插件安装地址
--plugin-dir=/usr/lib64/mysql/plugin
#错误日志
--log-error=/var/log/mysqld.log
#mysql 进程 id
--pid-file=/var/run/mysqld/mysqld.pid
#文件是负责 mysql 的连接的,如果该文件不存在,则无法访问 mysql
--socket=/var/lib/mysql/mysql.sock
3、怎么查看 mysql binlog 日志存放的位置
这个你可以看配置文件 启用了才有这样的记录默认是没有的
linux 系统中的/etc/my.cnf
my.cnf 内容:
log-bin = mysqlbin # 默认配置
一般放在/var/lib/mysql
比如上面的设置重启数据库会生成 mysqlbin.000001 文件
自定义文件存放位置
修改配置文件,vi /etc/my.cnf,找到 log-bin 的部分
expire_logs_days=5 ##配置定期清理
log-bin=/home/logs/mysql-bin ##修改后的日志路径
binlog_format=ROW
配置自动清理在 my.cnf 文件中,这个文件路径不知道的话执行 mysql --help | grep 'Default
options' -A 1,就会列出文件的路径来
下面列几个常用的命令
0、查看日志开启状态 show variables like 'log_%';
1、查看所有 binlog 日志列表 show master logs;
2、查看最新一个 binlog 日志的编号名称,及其最后一个操作事件结束点 show master status;
3、刷新 log 日志,立刻产生一个新编号的 binlog 日志文件,跟重启一个效果 flush logs;
4、清空所有 binlog 日志 reset master;
5、日志查看,因为是二进制文件没法用 vi 等打开,可以用 mysql mysqlbinlog 打开,
/usr/bin/mysqlbinlog /home/logs/mysql-bin.000001,当然每个人路径可能不一样,这个只能自
己去找了。
mysql> show master status \G
*************************** 1. row ***************************
File: mysql-bin.000037
Position: 698693274
mysql> show master status \G
*************************** 1. row ***************************
File: mysql-bin.000037
Position: 907475563
四、mysql+log 备份_mysqldump 备份与基于 bin-log 实现完全恢复
mysql 的逻辑备份是将数据库中的数据备份为一个文本文件,在 mysqldump 工具完成逻辑备份。
备份指定的数据库或者指定数据库中的表
shell > mysqldump -u user -p password dbname > /path/backupdb.sql
shell > mysqldump -u user -p password dbname tbname > /path/backupdb.sql
示例:备份 db4 库中的 tb1 表到/opt,没有指定用户密码是因为没有设置密码
4、二进制日志转换文本文件
mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql_bin.000003 >
/opt/mysql_bin003.txt
根据时间点恢复数据
mysqlbinlog --no-defaults --stop-datetime=‘2022-07-29 12:06:12’
/usr/local/mysql/data/mysql-bin.000002 | mysql -u root -p //基于时间恢复 从开头到指
定的时间停止 之前的都会执行操作
mysqlbinlog --no-defaults --start-datetime=‘2022-07-29 12:06:16’
/usr/local/mysql/data/mysql-bin.000002 | mysql -u root -p //基于正确的时间恢复 从指
定的时间点到结尾都会执行操作
mysqlbinlog --no-defaults --stop-position="698693274"
/usr/local/mysql/data/mysql-bin.000002 | mysql -u root -p //基于 position 从开头到
指定的 position 之前的都会执行操作
5、此时我们在使用 binlog 这种方式进行增量恢复,进入到数据库内查看 binlog events
mysql> show binlog events in "mysql-bin.000037
开启远端访问权限:
mysql> use mysql;
mysql> update user set host='%' where user='root';
mysql> flush privileges;
下面命令可以查看 mysql 的当前链接情况
show full processlist;
of 2
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。