postgresql安装过程中内核资源的配置
官方文档https://www.postgresql.org/docs/current/kernel-resources.html 以下仅针对linux系统(其他系统请参考上面的官方文档链接),涉及/etc/security/limits.conf、/etc/sysctl.conf、/etc/systemd/logind.conf文件对应的参数1、共享内存和信号量Shared Memor
sqlplus -prelim和oradebug捕获数据库hang住的详细信息
ORACLE 10g 开始,sqlplus提供了一个参数-prelim,在数据库hang住的情况下,仍然可以通过sqlplus -prelim / as sysdba登录到数据库。再结合oradebug命令,可导出数据库当前hang住的详细信息具体方法按如下步骤执行sqlplus -prelim / as sysdbaoradebug setmypidoradebug unlimitoradebu
mongod命令的一些参数以及参数--pidfilepath与mongod.lock区别
参考官方文档https://docs.mongodb.com/v3.6/reference/program/mongod/#options--fork 在后台运行fork server process 创建服务器进程fork表示以后台进程模式进行运行,并对这个后台进程产生一个进程号,没有启用fork的话,mongod命令以前端模式运行,mongod命令退出则进程也退出了没有启用fork,ctrl+
postgresql的安装和启动方法
官方文档二进制安装和启动:https://www.postgresql.org/download/linux/redhat/源码安装:https://www.postgresql.org/docs/11/install-procedure.html源码启动:https://www.postgresql.org/docs/11/server-start.html两种方法1、二进制安装(linux是r
mongodb的安装和启动方法
官方文档安装:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/启动关闭:https://docs.mongodb.com/v3.6/tutorial/manage-mongodb-processes/#terminate-mongod-processes目前安装方式分两种,一种是rpm直接安装,一种是使用tar
Mysql为什么多个大版本并行发布的个人理解
mysql为什么会出现多个大版本并行的情况,相信很多人都被mysql的版本发布规则搞糊涂了,比如为什么有了8.0还去修复5.5的bug,而5.5.1升级到5.5.10也是需要重新安装5.5.10的独立安装包的,这种小版本的安装也是需要停机的,反正都要停机,那为啥不直接从5.5.1升级升到5.7.1。oracle大版本并行也就两个,目前是2019年,oracle早已不维护10g版本了,目前是11g和
mysql dba常用的查询语句
查询table1表的索引show index from table1查看select语句的执行计划explain extended select * from t1;desc extended select * from t1;查看某个参数show global variables like '%XX%';查看某个状态show status like '%YY%';
mysql的sql语句执行流程
1、client和server建立连接,client发送sql至server(对应连接器这一过程)2、server如果在查询缓存中发现了该sql,则直接使用查询缓存的结果返回给client,如果查询缓存中没有,则进入下面的步骤(对应查询缓存这一过程,8.0这一过程已经不存在了,8.0完全抛弃了这个功能)3、server对sql进行语法分析,识别出sql里面的字符串是否符合标准,比如select关键
mysql关于聚集索引、非聚集索引的总结
总结:1、mysql的innodb表,就是索引组织表,表中的所有字段都放在索引上,这就约定了数据是严格按照顺序存放的,所以不管插入的先后顺序,它在那个物理上的那个位置与插入的先后顺序无关。2、聚集索引,叶子节点存的是整行数据,直接通过这个聚集索引的键值找到某行3、聚集索引,数据的物理存放顺序与索引顺序是一致的,即:只要索引是相邻的,那么对应的数据一定也是相邻地存放在磁盘上的。4、聚集索引,数据行和
my.cnf文件关于组选项的总结
1、[server]和[mysqld]的区别,没有看到官方文档,个人感觉server指整台服务器,mysqld指实例,当一台服务器上多个实例使用同一个配置文件my.cnf时,[server]通用于所有实例,[mysqld_3306] [[mysqld_3307] [mysqld_3308]对应单独实例2、mysqld从[mysqld]和[server]组中读取选项。 mysqld_safe从[my
mysql关于mysqld_safe的总结
总结1、mysqld_safe是服务端工具,用于启动mysqld,并且是mysqld的守护进程,mysqld_safe加&在后台运行$BASEDIR/bin/mysqld_safe &2、因为mysqld_safe是mysqld的守护进程,所以mysqld_safe脚本会在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它。3、直接使用mysqld_safe启动mys
mysql关于mysql.server的总结
1、mysql.server服务端工具,主要作用就是为了方便启动和关闭mysql服务,这个脚本中调用mysqld_safe来启动mysqld2、RPM包安装时,发现/etc/rc.d/init.d/mysql和/usr/share/mysql/mysql.server里面的东西一模一样3、mysql.server脚本其实也是调用mysqld_safe脚本去启动MySQL服务器的,但此时mysqld
数据库对象比如表放入内存,行发生改变不会自动同步到内存的总结
问题:把表数据库放入DATABASE BUFFER中,把表的查询结果放入result_cache,一旦表的行更改会自动同步到这些内存中吗?答案:不会,而是重新访问数据文件进行查询。ORACLE官方支持的回复如果表中的数据有行增加或者更新,当再次访问相关的表或执行查询时, Oracle能检测到这种数据的更新,访问数据文件来进行查询。不是定时的把数据文件中的数据同步到KEEP buffer pool
expdp慢的一次处理思路,最后发现原来遇到了bug
1、检查expdp时,数据库是否负载太高,可以使用工具OSWatcher捕获历史的硬件资源使用情况,如果在负载低时,expdp还是很慢,继续下面步骤22、检查是否有大表或LOB字段,如果没有,继续下面步骤33、expdp命令增加参数metrics、trace,查看每个步骤的时间和trace文件信息中dm到dw的消耗时间,如果发现不了问题,继续下面步骤4METRICS=Y TRACE=4803004
oradebug的使用说明
oradebug是个sql*plus命令行工具,有sysdba的权限就可以登入,用于追踪进程的详细信息并生成trace文件sqlplus / as sysdbaSQL> oradebug helpexpdp很慢,增加metrics和trace参数还是看不出问题,通过10046获取等待事件,使用oradebug抓取expdp进程的这样详细信息并写入到trace文件1、timed_statist
DBA常用的linux命令
按oracleSID来查询连接数据库的客户端IPnetstat -anpT | grep oracleSID | awk '{print $5}' | grep -o -E '1.*:' | awk -F ':' '{print $1}' | sort按监听端口1521来查询连接数据库的客户端IPnetstat -anpT
11G开始voting disk自动备份到OCR了,也就是说voting disk信息合并到OCR中了
In Oracle Clusterware 11g release 2 (11.2), you no longer have to back up the voting disk. The voting disk data is automatically backed up in OCR as part of any configuration change and is automatical
OSWatcher的安装、配置、使用
参考Oracle Metlink官方文档Note:1526578.1 OSWatcher 是Oracle的一个操作系统资源和网络监控工具,它通过调用OS的一些命令,比如:top, vmstat, iostat, ps ,netstat 等来收集CPU、内存、I/O、进程以及网络等情况。 下面是启动并配置OSWatcher的例子: 1). 将下载后的压缩文件上传到主机并
expdp导出慢的解决思路__增加参数metrics记录每个步骤时间,增加参数trace记录trace
两者都是未公开的参数expdp -help看不到Majority of issues use following two data pump parameters: METRICS=Y -- this will provide timing data on number of objects TRACE=480300 -- this will trace dm and dw p
mysql关于db.opt文件的总结
总结1、create database时会自动生成一个文件db.opt,存放的数据库的默认字符集,show create database时显示数据库默认字符集即db.opt中字符集2、这个文件丢失不影响数据库运行,该文件丢失之后新建表时,找不到数据库的默认字符集,就把character_set_server当成数据库的默认字符集,show create database时显示character_