数据库
文章平均质量分 54
数据库相关知识记录
shy_snow
这个作者很懒,什么都没留下…
展开
-
navicat密码解密
【代码】navicat密码解密。原创 2024-01-04 13:04:06 · 1035 阅读 · 0 评论 -
Centos7离线安装sqlserver2017
根据操作系统选择安装包,可以在这找下https://packages.microsoft.com/config我选择是先在一台有网的机器上下载好rpm安装包之后再传到内网机器上安装。原创 2023-01-06 18:30:00 · 763 阅读 · 0 评论 -
低版本客户端连接oracle12c报错ORA-28040: No matching authentication protocol
修改product/12.1.0/dbhome_1/network/admin/sqlnet.ora增加SQLNET.ALLOWED_LOGON_VERSION_SERVER=8SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8重启数据库及监听;sqlplus / as sysdba;shutdown immediatestartuplsnrctl stoplsnrctl start;修改用户密码;alter user 用户名 identified by 新密码;原创 2022-12-04 09:10:50 · 1333 阅读 · 0 评论 -
yum安装postgresql
yum安装 yum install postgresql postgresql-server 创建数据库,修改密码,放开远程访问限制,重启原创 2022-12-01 22:03:59 · 2605 阅读 · 0 评论 -
oracle开启归档日志并修改归档日志路径
sqlplus / as sysdbashutdown immediate; startup mount;alter database archivelog;alter database open;archive log list;alter system set log_archive_dest_1='LOCATION=/data/tb_oracle/arch';alter system switch logfile;archive log list;原创 2022-11-21 10:35:46 · 4472 阅读 · 0 评论 -
Ubuntu安装clickhouse集群
apt-get clickhouse*.deb安装。配置组网信息metrika.xml。config.xml放开本地访问限制,放开注释,引用组网信息 /etc/metrika.xml。连接客户端测试建分布式表语句clickhouse-client --password 123原创 2022-10-27 10:21:33 · 680 阅读 · 0 评论 -
arm麒麟安装mysql
1.安装deb文件dpkg -i *.deb安装过程中会要求你设置的mysql的root密码2.修改/etc/my.cnfdatadir = /data01/MPP/mysql/databind-address=0.0.0.03.重启mysqlsystemctl stop mysql.servicesystemctl start mysql.service4.查看状态systemctl status mysqld5.创建远程访问用户并赋权限原创 2022-09-02 10:52:56 · 1075 阅读 · 0 评论 -
topology.yaml中指定端口号
因为需要复用机器部署另外一套tidb集群,端口冲突了,修改topology.yaml指定端口总是错误,无奈使用tiupclusteredit-configtidb,然后复制出来修改端口号。原创 2022-07-22 14:38:43 · 415 阅读 · 0 评论 -
prometheus api删除某个指定job的所有数据
通过prometheus启动参数--web.enable-admin-api 来开启admin HTTP API的访问。curl -X POST -g 'http://localhost:9090/api/v1/admin/tsdb/delete_series?match[]={job="youjobname"}'原创 2022-07-07 12:50:46 · 2504 阅读 · 0 评论 -
修改配置文件后tidb无法启动
tiup cluster edit-config tidb-dev修改配置文件后重启集群发现pd组件无法启动:查看错误提示中的debugger日志发现其通过ssh远程启动pd服务后一直无法检测到pd的端口,2分钟后超时报错。将日志中命令: systemctl start pd-2379.service查看pd-2379.service的内容:复制出来执行,发现报错为pd.toml中有不识别的配置,直接修改pd.toml,然后启动成功......原创 2022-07-06 13:54:38 · 1136 阅读 · 0 评论 -
clickhouse2分片2副本高可用集群搭建及chproxy代理配置使用
clickhouse集群是表级别的,在节点层面上clickhouse每个节点都是独立的, 即使组成集群了也是独立的,所以永远只能连接到clickhouse的单节点上。可以类比redis,有点像是积木,可以按配置文件随意组装。只要各节点上安装clickhouse单机之后再配置config.xml和/etc/metrika.xml将其他节点的连接信息以及分片和副本情况配置好就可以了。原创 2022-06-02 09:14:13 · 2524 阅读 · 0 评论 -
clickhouse建表异常 DB::Exception: No macro ‘shard‘ in config
clickhouse的config.xml配置文件的macro标签中没有配置shard,配置下就可以了。<macros> <!-- 这里的shard只是一个变量 --> <shard>01</shard> <replica>stress1019988</replica></macros>如果macros是配置在metrika.xml中的,需要在config.xml中使用incl引用才行<in原创 2022-05-31 08:48:43 · 2430 阅读 · 0 评论 -
批量写入tidb提高写入效率
在url中增加allowMultiQueries=true&rewriteBatchedStatements=true&useConfigs=maxPerformance&useServerPrepStmts=true开启批量提交sql,并在代码中使用批量提交的方式提高写入效率; ps.addBatch(); if (i % batchSize == 0) { ps.executeBatch(); ...............原创 2022-05-30 15:27:26 · 3215 阅读 · 0 评论 -
oracle表空间位置移动(包括系统表空间和redo log)
--查询表空间使用情况SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB "表空间大小(M)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') "使用比",F.TOTAL_BYTES "空闲空间(M)",F.MAX_BYTES原创 2022-05-19 17:59:31 · 2903 阅读 · 0 评论 -
clickhouse创建分布式数据库和分布式表
前提:有多个clickhouse节点并在metrika.xml配置分片和副本。-- 查询cluster集群名称 比如nx_clickhouse_4shards_1replicasselect * from system.clusters;drop database test on cluster nx_clickhouse_4shards_1replicas ;create database test on cluster nx_clickhouse_4shards_1replicas ;-原创 2022-05-19 14:50:23 · 2540 阅读 · 0 评论 -
java使用JDBC连接hive
import java.sql.SQLException;import java.sql.Connection;import java.sql.ResultSet;import java.sql.Statement;import java.sql.DriverManager; public class HiveServer2Connect { private static String driverName = "org.apache.hive.jdbc.HiveDriver";原创 2022-05-06 09:54:23 · 2022 阅读 · 0 评论 -
redis5集群安装并设置密码
redis是c写的,需要进行编译。redis集群一般至少要6个节点(三主三从)配置启动好各节点后,使用redis-trib.rb工具构建集群即可(先不要设置密码,等集群构建完成后再分别通过客户端设置密码后写入config配置文件)。安装依赖sudo yum -y install gcc gcc-c++ tcl zlib zlib-devel ruby ruby-devel rubygems rpm-build下载 redis-*.gem然后本地安装#下载地址 https://rubygems.o原创 2022-05-05 01:00:12 · 2504 阅读 · 0 评论 -
mysql主从集群搭建
主mysql开启binlog日志,创建同步用户;从机上配置同步用户并指定同步主机的binlog文件及起始位置即可使用同步用户同步主mysql的binlog日志,配置组成mysql主备集群。主备集群上主机可以读写,但是从机只能读不能写,因为是单向同步。一般主从集群只会使用主Mysql,从机实际上只起到备份数据的作用,如果有读写分离可以分担一部分读的压力。下面使用两台机器做一主一从的mysql主从集群搭建示例:一、先分别安装mysql## 创建部署目录sudo mkdir -p /opt/MPPsu原创 2022-04-30 00:55:40 · 2349 阅读 · 0 评论 -
clickhouse修改数据目录
clickhouse默认数据目录在 /var/lib/clickhouse, 一般分区空间有限,需要修改。只要停止数据库之后移走该目录再建立软连接,即可不修改config.xml实现对数据目录的修改。clickhouse stopmv /var/lib/clickhouse /data01/ch/ln -s /data01/ch/clickhouse /var/lib/clickhouseclickhouse start原创 2022-04-26 22:55:38 · 3843 阅读 · 0 评论 -
离线安装TiDB4.0集群
上传离线安装包并配置集群初始化配置文件topology.yaml之后,使用tiup cluster deploy命令即可自动按照metrika.xml的配置机器上安装指定组件组成TiDB集群。官方离线安装文档##下载离线安装包,上传后解压官网下载地址https://pingcap.com/zh/product/#SelectProduct包很大有1.5G要提前上传好,sudo rpm -ivh sshpass-1.06-2.el7.x86_64.rpm tar -xzvf tidb-com原创 2022-04-19 23:41:20 · 2016 阅读 · 0 评论 -
tar包安装多个mysql
tar包安装多个mysql下载并解压安装包wget http://192.168.128.121/pkgs/mysql-5.7.32-linux-glibc2.12-x86_64.tar.gztar zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz -Cmkdir /data/mysql13306tar zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz修改my.cnf配置文件中的路径带原创 2022-04-01 00:35:31 · 720 阅读 · 0 评论 -
CentOs7.5离线静默安装Oracle12c
CentOs7.5离线静默安装Oracle12c/usr/local/oracle/database/runInstaller -silent -responseFile /usr/local/oracle/database/response/db_install.rsp/usr/local/oracle/product/12/db_1/bin/netca -silent -responsefile /usr/local/oracle/database/response/netca.rsp原创 2022-03-23 18:44:48 · 2382 阅读 · 1 评论 -
linux离线安装mysql8
一、上传安装包到Linux1、传路径:/usr/local/2、解压缩tar xvf mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz3、重命名mv mysql-8.0.17-linux-glibc2.12-x86_64 mysql二、安装配置1、修改 vi /etc/my.cnf[client]port=3306socket=/var/lib/mysql/mysql.sock[mysqld]port=3306user=m....原创 2022-03-16 10:25:27 · 2246 阅读 · 3 评论 -
ClickHouse单节点部署
ClickHouse单节点部署#环境检测# grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"#yum安装clickhouse,留意安装时打印的默认日志目录yum install yum-utilsrpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPGyum-config-man原创 2022-03-14 14:18:30 · 2032 阅读 · 0 评论 -
TiDB单节点部署
wget http://download.pingcap.org/tidb-latest-linux-amd64.tar.gzwget http://download.pingcap.org/tidb-latest-linux-amd64.sha256sha256sum -c tidb-latest-linux-amd64.sha256tar -xzf tidb-latest-linux-amd64.tar.gz#根据解压实际的版本进入目录cd tidb-v5.0.1-linux-amd原创 2022-03-10 18:03:11 · 957 阅读 · 0 评论 -
flinkCdc的mysql配置及java测试代码
测试使用的是flinkCdc2.1.1版本(无锁同步,1.x版本有同步锁)目前支持mysql5.7及以上版本;要在mysql.cnf中配置开启开启mysql的bin-log日志,log_bin=mysql-binbinlog_format=ROW并且只支持ROW格式,其他mixed和statement会报错如果想配置控制binlog日志的范围,在数据库范围可以使用mysql的binlog-do-db和binlog-ignore-db,表级别可以使用replicate_wild_do_t.原创 2022-02-21 18:58:46 · 6360 阅读 · 0 评论 -
FlinkCdc从Mysql指定的binlog日志offsetPos位置开始读取数据
flinkCdc1.4.0版本有specificOffset方式指定binlog日志的位置开始读数据, 新版本测试还未支持该功能。import com.alibaba.ververica.cdc.connectors.mysql.MySQLSource;import com.alibaba.ververica.cdc.connectors.mysql.table.StartupOptions;import com.alibaba.ververica.cdc.debezium.StringD..原创 2022-02-11 14:53:54 · 5108 阅读 · 7 评论 -
快速批量一个半小时插入1亿条数据到mysql
先造数据写入txt,然后使用mysql的load data infile来直接将txt中的数据导入表中#!/bin/bashfor a in {1..12}dodateecho ${a}begin...mysql -D yourDbName -u root -p123456 -e "load data infile '/home/mysql/order.txt' into table order fields terminated by '|' OPTIONALLY ENCLOSED原创 2022-01-27 12:34:35 · 1648 阅读 · 0 评论 -
linux磁盘满了之后清理
cd /df -hdu h --max-depth=1选择较大的目录cd继续du --max-depth=1按目录大小排序du --max-depth=2 | sort -nls -lS直接查找大于莫个值的文件find / -size +1G -printoracle监听日志清理1、先停监听日志su - oraclelsnrctl set log_status off;2、删除日志(11g监听日志路径)/u01/app/oracle/diag/tnslsnr/“实例名.原创 2021-12-27 10:06:06 · 1240 阅读 · 0 评论 -
mysql锁表定位
select s.*,hw.* from (select curtime() curtime, h.trx_mysql_thread_id holder, timestampdiff(second, h.trx_started, now()) elap_sec, rpad(ifnull(h.trx_query, 'null'), 50, ' ') sqltext, group_concat(w.trx_mysql_thread_i...原创 2022-02-03 10:34:26 · 300 阅读 · 0 评论 -
mysqlbinlog日志查看
mysqlbinlog --no-defaults --database=etl_test_1210 --base64-output=decode-rows -v --start-datetime='2021-12-03 09:00:00' --stop-datetime='2021-12-03 10:27:00' mysql-bin.001019原创 2021-12-07 10:58:10 · 4928 阅读 · 0 评论 -
innodb_rollback_on_timeout
innodb_rollback_on_timeout默认off, 当事务中包含多个更新语句时如果一个更新因为锁超时报错时会回退到上一个语句(保存点),但整个事务不会结束,可以继续选择提交事务还是回滚事务.innodb_rollback_on_timeout为on时锁超时则自动回滚所在的整个事务,5.6版本在回滚后会自动创建一个新事务,5.7版本在回滚后不会自动创建新事务。...原创 2021-12-01 14:07:50 · 1596 阅读 · 0 评论 -
慢日志定位到备份锁表Waiting for global read lock原因
show processlist;发现大量阻塞状态的事务,提示Waiting for global read lock全库锁了15分钟,到数据库主机查看慢日志,发现果然在那个时段有人执行了FLUSH TABLES WITH READ LOCK的操作。原创 2021-11-23 12:45:52 · 4297 阅读 · 0 评论 -
定时执行sql统计数据库连接数并记录到表中
压测时想监控数据库连接数变化,自己写个shell脚本在crontab里定时查询并输出到日志。shell脚本如下:#!/bin/bashfor a in {1..12}do mysql -h 192.168.128.136 -u root -pYourRealPassword -e "select now() logdate,substring_index(host, ':', 1) host, count(*) cnt from information_schema.processlist原创 2021-11-03 12:22:45 · 333 阅读 · 0 评论 -
oracle数据库inactive状态session过多的原因定位
新功能上线后,数据库告警,session连接接近最大值,有耗尽的风险。开始定位解决这个风险问题,首先查看这些连接都在执行什么sqlselect sql_text,se.* from v$sql s, v$session sewhere se.prev_hash_value=s.hash_value and se.status='INACTIVE' and se.username ='...原创 2019-05-30 19:32:05 · 12000 阅读 · 0 评论 -
mysql常用参数
参数名称 参数说明 参考 max_connections 数据库的最大连接数 MySQL :: MySQL 8.0 Reference Manual :: 5.1.8 Server System Variables wait_timeout 非交互模式的没有操作后的超时秒数,超时后数据库会关闭该连接。 MySQL :: MySQL 8.0 Reference Manual :: 5.1.8 Server System Variables interactive原创 2021-09-28 19:14:31 · 176 阅读 · 0 评论 -
获取数据库表结构
一、获取oracle的表结构导出为execl1.plsql中使用下面的sql查询出oracle表结构,然后在plsql中选择将导出查询结果集(export Query Resultes…)为execlSELECT B.TABLE_NAME AS "表名", C.COMMENTS AS "表说明", B.COLUMN_ID AS "字段序号", B.COLUMN_NAME AS "字段名", B.DATA_TYP...原创 2021-08-18 16:22:37 · 599 阅读 · 0 评论 -
insert into select 死锁
show engine innodb status;发现有死锁, insert into b select * from s where ;我们是mysql数据库,可重复读隔离级别, 在insert into b select * from s where 这种语句下会对表b加X锁,对s表扫描的行加S共享读锁。原创 2021-08-15 09:17:40 · 1613 阅读 · 0 评论 -
多表更新,用一个表更新另外一个表
update table_1 t1,table_2 t2 set t1.column = t2.column where t1.id = t2.pid;原创 2021-05-20 15:53:03 · 161 阅读 · 0 评论 -
树莓派安装pg数据库
/1、执行sudo apt install postgresql libpq-dev postgresql-client postgresql-client-common -y如果提示"有几个软件包无法下载,要不运行 apt-get update 或者加上 --fix-missing 的选项再试试?"则执行下sudo apt-get updatesudo apt-get install --fix-missing然后重新安装下等待执行完成就安装好了2、当安装完成原创 2021-05-15 22:15:33 · 973 阅读 · 0 评论