青岛
1 | cu.vpn.haier.net:10445 # 联通 |
北京
1 | 123.103.113.249:8443 |
mac 访问内网
- 连无线
Haier-Corp
- 使用工号登录
1.1.1.3
- 打开网络偏好设置,修改
DNS
为:10.138.40.212、10.138.40.213
CentOS 升级到 7 之后,内置的防火墙已经从 iptables
变成了 firewalld
,不同操作系统设置的方式不同。
1 | chkconfig iptables on # 开启防火墙 |
1 | /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT # 打开22端口 |
1 | /etc/init.d/iptables status |
1 | systemctl start firewalld # 启用防火墙 |
1 | firewall-cmd --zone=public --add-port=80/tcp # 永久生效再加上--permanent |
1 | firewall-cmd --zone=public --list-ports |
PostgreSQL 9.2.8
10.133.0.52
/ PostgreSQL 11.5
迁移表 | 说明 | 数据量 | 状态 |
---|---|---|---|
t_ems_base | 题库 | 3139 | OK |
t_ems_base_category | 题库类别 | 164 | OK |
t_ems_item | 试题 | 500378 | OK |
t_ems_item_option | 试题选项 | 1250290 | OK |
t_ems_paper | 试卷 | 3262 | OK |
t_ems_paper_item_rel | 试卷试题 | 1920540 | OK |
t_ems_info | 考试 | 36229 | OK |
t_ems_result | 考试成绩 | 1052490 | OK |
t_ems_result_detail | 考试答题详情 | 69602800 | ? |
PostgreSQL 是一个免费的对象-关系数据库服务 (ORDBMS),ORDBMS 面向对象数据库管理系统,将所有实体都看着对象,并将这些对象类进行封装,对象之间的通信通过消息,ORDBMS 对象关系数据库在实质上还是关系数据库 。
1 | # 下载rpm包 |
1 | $ su - postgres |
1 | psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432 |
1 | CREATE USER dbuser WITH PASSWORD 'password'; |
“postgres=#”,表示这时已经进入了数据库控制台,除了 \q 命令(退出)以外,控制台还提供一系列其他命令:
1 | \h:查看SQL命令的解释,比如\h select。 |
1 | # 创建新表 |
1 | yum install postgresql-server postgresql-contrib |
Binlog:也称二进制日志,是 MySQL 最重要的日志,记录所有数据库表结构变更(如 CREATE
、ALTER TABLE
)以及表数据修改(如 INSERT
、UPDATE
、DELETE
),不会记录 SELECT
和 SHOW
这类操作,主要作用:复制(主从同步)、恢复和审计。
日志格式 | 记录说明 | 优点 | 缺点 |
---|---|---|---|
STATEMENT |
记录的是修改 SQL 语句 |
日志文件小,节约 IO |
准确性差,一些系统函数不能准确复制 |
ROW |
记录的是每行实际数据的变更 | 准确性强,能准确复制数据的变更 | 文件日志大,较大的磁盘和网络 IO |
MIXED |
以上两种模式的混合 | 准确性强,文件大小适中 | 有可能发生主从不一致问题 |
1 | [mysqld] |
参数 | 含义 |
---|---|
log_bin = { on | off | base_name } | 指定是否启用二进制日志或者指定一个日志路径 |
binlog_format = { mixed | row | statement } | 指定二进制日志格式 |
expire_logs_days | 指定二进制日志过期时间 |
sql_log_bin = { on | off } | 指定是否启用记录二进制日志 |
log_bin_index | 指定 mysql-bin.index 文件路径 |
max_binlog_size | 指定二进制日志文件最大值 |
binlog_cache_size | 指定事务日志缓存区大小 |
max_binlog_cache_size | 指定二进制日志缓存最大值 |
sync_binlog = { 0 | n } | 指定写缓冲多少次,刷一次盘 |
1 | # 手工删除 |
1 | [root@cosmoim-db04 data]# ll -h |
解析 relaylog
日志,发现执行的是一个 update
大事务
1 | mysqlbinlog --base64-output=decode-rows --verbose relay-log.001999 |
1 | #191106 21:53:01 server id 13823283 end_log_pos 342 CRC32 0x50ae56cd Table_map: `cosmo-aps`.`bns_aps_versiontolineinfo` mapped to number 417 |
1 | $ mysqlbinlog -vv --base64-output=decode-rows mysql-bin.xxx | head -1000 | more |
HDM 监控告警
您的自建DB实例
cosmo-aps|cosmo-aps-t@10.138.232.84:3306 ( 别名: COSMOAPS_S, 集群: 智能制造 )
MySQL活跃会话数达到551
查看当前会话情况,发现出现大量的 State is init.
1 | +--------+-------------+---------------------+--------------------+---------+---------+----------------------------------------+------------------------------------------------------------------------------------------------------+ |
从错误日志发现,2019-11-06 22:53:40
开始提醒磁盘空间不足
1 | 2019-11-06 22:53:40 5752 [Warning] Disk is full writing './relay-log.002275' (Errcode: 28 - No space left on device). Waiting for someone to free space... |
检查磁盘空间使用情况,发现 /data
目录已占满
1 | [root@cosmoim-db04 log]# df -h |
/data
目录下磁盘占满的主要原因 Nov 6 14:44
出现主从复制中断导致 relay-log
疯狂增长
1 | [root@cosmoim-db04 data]# ll -h |
释放部分磁盘空间后,连接会话恢复正常
1 | mysql> show processlist; |
简介:top 是 Linux
下常用的监控程序,htop 相当于其加强版,颜色显示不同参数,且支持鼠标操作,更加简单和人性化。
安装:
1 | $ git clone https://github.com/hishamhm/htop.git |
使用:
简介:mycli 是用于 MySQL
、MariaDB
和 Percona
的命令行界面,具有自动补全和语法高亮功能。
安装:
1 | $ yum install python-pip |
使用:
1 | $ mycli --help |
1 | # 快捷键 |
简介:用来定期执行程序的命令。
使用:在线工具
简介:Markdown
是一种轻量级标记语言,人们使用易读易写的纯文本格式编写文档,然后转换成有效的 html
文档,Typora
对 Markdown
的完美支持、丰富的主题、高效的快捷键操作,无一不令人爱不释手。
安装:下载
使用:
1 | 加粗: Ctrl/Cmd + B |
简介:禅道,国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug
管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。
使用:
1 | # 安装 |
连接 MySQL 操作是一个连接进程和 MySQL 数据库实例进行通信。从程序设计的角度来说,本质上是进程间通信。常用的进程通信方式有:管道、命名管道、命名字、TCP/IP 套接字、UNIX 域套接字。
这种方式是 MySQL 数据库在任何平台下都提供的连接方式,也是网络请求中使用的最多的一种方式。这种方式在 TCP/IP 连接上建立一个基于网络的连接请求,一般情况下客户端和服务端不在同一台服务器上。需要注意的是,在通过 TCP/IP 连接到 MySQL 实例时,MySQL 数据库会先检查一张权限视图,用来判断发起请求的客户端 IP 是否允许连接到 MySQL 实例,该视图为 mysql.user。
1 | $ mysql -h IP -u username -p password -P port |
UNIX 域套接字其实不是一个网络协议,所以只能在 MySQL 客户端和数据库实例在一台服务器上的情况下使用。用户可以在配置文件中指定套接字文件的路径,如:socket = /tmp/mysql.sock。
1 | [client] |
1 | # !/bin/sh |