数据库
文章平均质量分 58
redis\mysql/oracle等数据库类问题
小 渣渣~
这个作者很懒,什么都没留下…
展开
-
瀚高数据库命令备份还原
pg_dump -h 127.0.0.1 -p 5866 -U 账号 -d highgo -v -Fc > unis.hgdmp。-U用户 -d模式 -f备份文件路径 -p数据库端口 -h数据库地址。瀚高数据库命令导入导出。原创 2023-01-09 19:45:00 · 1588 阅读 · 0 评论 -
搭建redis主从复制+哨兵高可用
Sentinel 通过监控的方式获取主机的工作状态是否正常,当主机发生故障时, Sentinel 会自动进行 Failover(即故障转移),并将其监控的从机提升主服务器(master),从而保证了系统的高可用性。在 Redis 主从复制模式中,因为系统不具备自动恢复的功能,所以当主服务器(master)宕机后,需要手动把一台从服务器(slave)切换为主服务器。# 第六个参数:哨兵的数量。主服务器每执行一个写命令就会向从服务器发送相同的写命令,从服务器接收并执行收到的写命令(从服务器初始化完成后的操作)原创 2023-01-03 19:45:00 · 439 阅读 · 0 评论 -
通过keepalived实现高可用
nopreempt这个参数只能用于state为BACKUP的情况,所以在配置的时候要把master和backup的state都设置成BACKUP,这样才会实现keepalived的非抢占模式!* 当state状态都设置成BACKUP,如果不配置nopreempt参数,那么也是看priority优先级决定谁抢占vip资源,即也是抢占模式。state BACKUP #都设置为BACKUP,设置非抢占模式,防止主库故障重起之后数据不同步,就进行VIP飘移。全表为只读,包括超级用户root。原创 2023-01-03 19:30:00 · 491 阅读 · 0 评论 -
Window下安装oracle12C
执行命令:sqlplus / as sysdba(以超级管理员身份登录),或者执行命令:conn system/密码@orcl as sysdba(以system用户登录)页面顶部选择 “接受许可协议” 后,我想选择下载 12c 版的企业版,文件1和文件2都需要下载。(如果提示登录 Oracle,则需要先登录才能下载)由于oracle默认在命令窗口查看的结果是竖的,不方便查看,可以执行下面的命令,修改显示结果。管理员账号密码不符合标准规则,想继续使用设置的密码,如下图所示,选择是。取消结束安全更新选项。原创 2023-01-03 20:00:00 · 2917 阅读 · 6 评论 -
oracle使用sysdba账号登录数据库的时候提示 ORA-01031: insufficient privileges
在开始中搜索Administration Assistant for Windows----->Oracle Managed Objects----->Computers---->主机名----->选中【操作系统数据库管理员-计算机】右键添加。然后在弹出的窗口中填写域:主机名 选中要添加的用户,添加保存即可,再次等sysdba就可以正常登录了。时候使用的用户)是不是在包含在ORA_DBA组中,域用户没有连上域服务器时就可能出现这种现象。原创 2022-12-30 21:15:00 · 1833 阅读 · 0 评论 -
Windows下安装oracle19c
执行命令:sqlplus / as sysdba(以超级管理员身份登录),或者执行命令:conn system/密码@orcl as sysdba(以system用户登录)2.将安装包上传至服务器上,注意文件夹不可带中文或者空格,由于oracle占用过大,建议安装到其他盘,不要安装到C盘,这里只是测试安装到C盘。这样安装会按默认设置自动帮我们创建一个实例和数据库,选择“仅设置软件”后续使用还是得自己手动创建。由于oracle默认在命令窗口查看的结果是竖的,不方便查看,可以执行下面的命令,修改显示结果。原创 2022-12-30 21:00:00 · 4999 阅读 · 0 评论 -
oracle安装完成后,只能在本地链接
进入监听配置文件路径C:\soft\WINDOWS.X64_193000_db_home\network\admin\,备份原文件并修改listener.ora和tnsnames.ora文件。Oracle搭建好了之后,发现只能在服务器本机链接oracle,其他客户端无法链接,这是因为监听地址是本地localhost,重建监听即可。从开始下找到配置监听的程序,将原先的监听先删除,然后进行新的监听添加。实例的监听地址已修改,远程可链接oracle。启动oracle,并查看监听。原创 2022-12-30 21:00:00 · 2042 阅读 · 0 评论 -
window上完全卸载oracle
卸载软件------开始------所有程序------Oracle - OraDb11g_home1------Oracle 安装产品------- Universal Installer-----删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 路径下的所有Oracle开始的服务名称。关闭oracle服务-----开始----->设置----->控制面板----->管理工具----->服务----->停止所有Oracle服务。原创 2022-12-29 22:00:00 · 2469 阅读 · 1 评论 -
通过heartbeat实现mysql高可用
STATUS=`/usr/local/mysql/bin/mysql -uroot -p密码 -e "show databases" |grep -c Database`logfile /usr/local/heartbeat/ha-log # 用于记录heartbeat的日志信息。logfile /usr/local/heartbeat/ha-log # 用于记录heartbeat的日志信息。在128、129上编写监控脚本/usr/local/heartbeat/stophb.sh。原创 2022-12-27 22:00:00 · 578 阅读 · 0 评论 -
mysql搭建主从复制
Read_Master_Log_Pos: 1223 //#同步读取二进制日志的位置,大于等于Exec_Master_Log_Pos。从salve服务器会在一定时间间隔内对主master二进制日志进行探测其是否发生改变,如果发生改变,则开始一个I/O Thread请求主master二进制事件。主master服务器将数据的改变都记录到二进制binlog日志中,只要master上的数据发生改变,则将其改变写入二进制日志;如图显示是正常的,主从就搭建好了,可以做些测试,看数据是否同步。原创 2022-12-27 20:00:00 · 1043 阅读 · 0 评论 -
linux php怎么安装oracle模块pdo-oci扩展
CentOS服务器上已有相关环境:apache2、php7需要安装:1.oracle客户端、2.oci8扩展、3.pdo_oci扩展一、安装Oracle客户端Oracle客户端可以在oracle官网下载(https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html)选择这上面这两个安装包,下载到/usr/local/soft 然后解压:#unzip instantclient-basic-linux.x64-11.2.0.4原创 2022-06-14 10:26:51 · 635 阅读 · 0 评论 -
oracle使用Navicat工具导入导出数据
oracle使用Navicat工具导出数据原创 2022-06-08 13:35:53 · 11089 阅读 · 1 评论 -
编译redis5.0.4报错/usr/bin/ld: cannot find -latomic
usr/bin/ld: cannot find -latomic主要观察这句报错内容,一般出现这种报错,都是缺少了一些函式库文件导致,编译不同的软件,报错错也是都不一样的,相同的一定就是有这句话:/usr/bin/ld: cannot find。其中-l后面的字符表示的是函式库文件名称,如上例的:libc.so、libltdl.so、libXtst.so、libatomic.so。make[1]: 离开目录“/usr/local/redis-5.0.14/src”原创 2022-10-31 10:57:44 · 628 阅读 · 0 评论 -
定制redis_RPM包,注册系统服务并开机自启
此时会报错rpmbuild/SOURCES/目录下找不到redis-3.2.1.tar.gz文件。源码地址:https://download.redis.io/releases。2.编译安装redis,此处以redis-3.2.1版本为例。4.在新的环境上安装redis。会在此目录下生成rpm包。打包编译好的redis。系统:Centos7。3.重新生成rpm包。原创 2022-10-28 16:51:25 · 1003 阅读 · 0 评论 -
redis6.0编译安装报错error:‘struct redisServer‘ has no member named ‘server_cpulist‘ redisSetCpuAffinity(s)
解决方案:升级gcc为9.0版本以上方式一:gcc在线升级为9.0版本以上#yum -y install centos-release-scl#yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils#scl enable devtoolset-9 bash注意:scl命令启用只是临时的,推出xshell或者重启就会恢复到原来的gcc版本。若要长期生效的话,执行如下:echo “source /opt.原创 2022-04-21 11:53:31 · 5118 阅读 · 0 评论 -
redis3.2使用redis-trib.rb命令创建集群报错/usr/bin/env:ruby:No such file or directory
解决方案:安装ruby2.3版本以上。方式一:在线安装:#yum -y install ruby ruby-devel rubygems rpm-build #gem install redis注意报错:是因为ruby版本小于了2.2.2,可以安装RVM----再安装ruby2.3版本#gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3#curl -L get.rvm.io | bash -s stable若出现下图报错,则原创 2022-04-21 12:04:57 · 1269 阅读 · 2 评论 -
heartbeat/keepalived开启防火墙后,主从都生成VIP
heartbeat/keepalived+mysql主从高可用,开启防火墙后,发现主库和从库都生成了VIP,这是因为防火墙拦截了vrrp的组播,而heartbeat时使用的是UDP的694端口,也被拦截了,需要开放一下策略,放行通信。Iptables:heartbeat: #vi /etc/sysconfig/iptables -A INPUT -p udp --dport 694 -j ACCEPT # service iptabl原创 2022-12-08 13:46:59 · 762 阅读 · 0 评论 -
利用jemalloc优化mysql
使用jemalloc会带来内存增加问题,内存的消耗跟使用内存成正比,即申请内存越多,jemalloc消耗额外内存也越多。缺点2:使用jemalloc管理内存时,在不同的架构效果也不同,内核page size是64KB时会出现内存激增的情况。jemalloc的确能对内存做一定优化,但是发现并不能解决所有内存碎片问题,只能说有一定缓解作用。配置上述变量,本意是为了快速回收内存,减少内存占用,结果发现在频繁申请的内存的场景,此方法管理mysql内存也存在一定的弊端,根据自身情况进行选择。三.查看是否导入成功。原创 2022-11-18 10:47:00 · 1372 阅读 · 0 评论 -
mysql内存会持续上涨,每天增加一点,一直到100%
使用sysbench 对数据库进行压测,压测一段时间mysqld内存使用上去了,停止压测,内存使用没有降低,也就是说线程关闭内存没有释放,使用gdb --batch --pid `pidof mysqld` --ex 'call malloc_trim(0)'发现内存有明显的释放。简言之,就是调用glibc申请的内存使用完毕后,归还给OS时没有被正常回收,而变成了碎片,随着碎片的不断增长,就能看到mysqld进程占用的内存不断上升。重启mysql释放内存,运行一段时间,问题依然存在。原创 2022-11-17 14:40:53 · 6339 阅读 · 0 评论 -
mysql高可用MHA
即使有些从服务器没有收到最新的relay log,MHA自动从最新的从服务器上识别差异的relay log并把这些日志应用到其他从服务器上,因此所有的从服务器保持一致性了。MHA通常在几秒内完成故障转移,9-12秒可以检测出主服务器故障,7-10秒内关闭故障的主服务器以避免脑裂,几秒中内应用差异的relay log到新的主服务器上,整个过程可以在10-30s内完成。若从库日志有如下报错,是因为虚机是克隆的master节点,克隆的虚拟机与原虚拟机的UUID是一样的,冲突了。原创 2022-10-31 14:59:49 · 976 阅读 · 0 评论 -
数据库配置口令复杂度策略和口令有效期策略
validate_password_mixed_case_count:validate_password_policy设置为MEDIUM或者STRONG时,密码中至少同时拥有的小写和大写字母的数量,默认是1最小是0;validate_password_special_char_count:当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少拥有的特殊字符的个数,默认1最小是0。default_password_lifetime=90 #密码90天过期。原创 2022-10-28 17:52:11 · 5996 阅读 · 0 评论 -
在同一台服务器中,同时安装mysql5.7和mysql8两个数据库
阅读本文前请注意!!!本文是帮助您建立在mysql5.7版本已经安装完成并在运行中,另外安装配置mysql8.0版本注意:若是mysql5.7的配置文件my.cnf存放在/etc目录下,需要将mysql5.7关闭服务,将my.cnf放到mysql5.7的安装目录下,再启动mysql5.7再进行安装mysql8.0,这样是为了防止配置文件冲突,导致mysql8启动报错或者可能会出现配置文件的配置不生效的情况#解压缩安装包,更改文件权限#tar -xvf mysql-8.0.25-linux-glibc原创 2022-07-08 17:49:27 · 4148 阅读 · 0 评论 -
mysql启动报错:The server quit without updating PID file几种解决办法
1.目录权限问题对mysql的安装目录和数据目录分别进行授权#chown -R mysql.mysql /usr/local/mysql#chown -R mysql.mysql /data/mysql#service mysqld start2.可能进程里已经存在mysql进程解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。原创 2022-06-30 09:44:11 · 63132 阅读 · 1 评论 -
linux升级mysql5.7.32
mysql升级(5.7.32)官网下载地址https://downloads.mysql.com/archives/community/ [^]#超快速升级法(删除原有mysql程序,启动新版本程序,不碰用户数据)。#service mysqld stop#rm -rf /usr/local/mysql/ //不删除mysql的数据目录data若mysql的数据目录在安装目录下,需要将数据目录data,拷贝至新版本的安装目录下#tar zxf mysql-5.7.32-linux-gli原创 2022-04-22 12:02:11 · 279 阅读 · 0 评论 -
Query partially completed on the master (error on master: 1053) and was aborted. There is a chance t
myslq主从不同步报错如下:Query partially completed on the master (error on master: 1053) and was aborted.There is a chance that your master is inconsistent at this point.If you are sure that your master is ok,run this query manually on the slave and then restart原创 2022-04-22 12:02:24 · 207 阅读 · 0 评论 -
mysql备份报错mysqldump: Got error: 1356: View ‘wordpress.v_t1‘ references invalid table(s) or column(s)
mysql备份中遇到了如下错误:mysqldump: Got error: 1356: View ‘wordpress.v_t1’ references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them when using LOCK TABLES原因: 视图引用的表不存在。原理:mysqldump在备份时要对表加读锁,加锁失败的时候。备份就终止了。解决方法:原创 2022-04-21 13:56:19 · 5031 阅读 · 0 评论 -
win安装mysql8报错Authentication to host localhost for user ‘root’ using method ‘caching_sha2_password’ f
解决方法:Win+R输入gpedit.msc-------“计算机配置”中找到“管理模板”----“internet通信设置”------右键“关闭自动根证书更新”点击-----“编辑”-----改为“已启用”----更改完毕后,是立即生效的—然后再次运行mysql的安装程序就可以了...原创 2022-04-21 13:54:49 · 2669 阅读 · 0 评论 -
mysql主从不同步,不停主库,恢复主从关系
在主库上全量备份#mysqldump -uroot -p --master-data=2 --default-character-set=utf8 test > test.sql#head -n 30 备份日志文件 可以看到备份时binlog的点从库上操作#mysql -uroot -pmysql> stop slave;在从库上恢复全量备份#mysql -uroot -p#mysql -uroot -p --default-character-set=utf8 te原创 2022-04-21 13:45:24 · 386 阅读 · 0 评论 -
mysql报错You do not have the SUPER privilege and binary logging is enabled
分析原因:是log_bin_trust_function_creators值为off导致,因为Table中有Trigger,如果不创建Trigger,不会出现这样的错误信息,但Trigger必须创建临时解决办法:用root用户登录:mysql -u root -pmysql>set global log_bin_trust_function_creators = 1;永久解决方案如下:修改配置文件,在[mysqld]部分加上:log_bin_trust_function_creators原创 2022-04-21 13:39:41 · 8127 阅读 · 0 评论 -
MySQL 主从同步percona-toolkit工具(数据一致性监测、恢复主从不同步)
在mysql工作中接触最多的就是mysql replication,mysql在复制方面还是会有一些常规问题,比如主库宕机或者从库宕机有可能会导致复制中断,通常需要进行人为修复,或者很多时候需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样。这种情况下就需要使用percona-toolkit工具的pt-table-checksum组件来检查主从数据的一致性;如果发现不一致的数据,可以通过pt-table-sync修复;还可以通过pt-heartbeat监控主从复制延迟。当然如果数据量小,sla原创 2022-03-02 10:16:22 · 2129 阅读 · 0 评论 -
MySQL性能测试工具之mysqlslap使用详解
mysqlslap是mysql自带的基准测试工具,优点:查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较.msqlslap为mysql性能优化前后提供了直观的验证依据,建议系统运维和DBA人员应该掌握一些常见的压力测试工具,才能准确的掌握线上数据库支撑的用户流量上限及其抗压性等问题。常用的选项--concurrency 并发数量,多个可以用逗号隔开--engines 要测试的引擎,可以有多个,用原创 2022-02-28 15:23:28 · 4654 阅读 · 0 评论 -
mysql清除审计日志
查看审计日志存放的位置mysql>show variables like ‘general_log’; – 查看日志是否开启mysql>show variables like ‘general_log_file’; – 看看日志文件保存位置mysql>show variables like ‘log_output’; – 看看日志输出类型 table或file删除审计日志步骤1)先关闭审计功能mysql>SET GLOBAL general_log = ‘OFF’;原创 2022-02-23 17:54:41 · 1729 阅读 · 0 评论 -
mysql清除binlog日志文件
清理前的准备:1) 查看主库和从库正在使用的binlog是哪个文件show master status\Gshow slave status\G2) 在删除binlog日志之前,首先对binlog日志备份,以防万一注意:时间和文件名一定不可以写错,尤其是时间中的年和文件名中的序号,以防不小心将正在使用的binlog删除!!!切勿删除正在使用的binlog!!!如果binlog非常多,不要轻易设置改参数去删除,有可能导致io争用!!!purge master logs before’2016原创 2022-02-23 17:48:32 · 6918 阅读 · 0 评论 -
windows下mysql5.7重置初始密码
在windows下安装的mysql5.7数据库,刚安装好的时候,默认会生成一个密码,放在err.log日志中,但是在日志中并没有找到,如何重置初始密码?方法一:修改配置文件(1)在mysql的配置文件my.ini中添加以下配置skip-grant-tables(2)重启mysql,在mysql的bin目录下,输入cmdnet restart mysql(3)修改密码mysql -uroot -puse mysql;update user set authentication_string原创 2021-03-02 14:05:27 · 1463 阅读 · 0 评论 -
Windows下安装MySQL5.7,安装时提示缺少【MSVCR120.dll】
安装mysql5.7时,提示一下报错需要安装一个安装包,下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=40784下载即可,下载完成后,双击安装包,下一步下一步既可。原创 2021-03-02 13:52:16 · 836 阅读 · 0 评论 -
windown安装mysql5.7服务【错误解决】本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止
windown安装mysql5.7服务后,启动mysql服务时出现该错误:本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止。(1)删除安装的mysql服务此命令需要进入mysql安装目录下的bin目录运行!sc delete mysql(安装mysql服务名称)(2)清空mysql的data目录,没有需要创建(3)初始化然后在bin目录下运行命令:mysqld --initialize-insecure --user=mysql(4)重新安装mysql服原创 2021-03-02 10:59:35 · 393 阅读 · 0 评论 -
windown下安装mysql5.7
1.把mysql包放到D:\Mysql5.7下2.添加环境变量右键“我的电脑”-------“高级系统设置”-------“环境变量”------“系统变量”-----修改“Path”--------在开头添加D:\Mysql5.7\bin;3.添加mysql的配置文件,默认解压开是没有配置文件的,需要自己添加,还需要创建存放数据的目录D:\Mysql5.7\data在D:\Mysql5.7目录下,创建配置文件my.ini,内容如下[mysqld]port=3306character_set_原创 2021-03-02 10:51:57 · 100 阅读 · 0 评论 -
redis开启AOF持久化后,突然aof文件特别大,导致硬盘满了无法写入数据
redis做了aof持久化后,aof文件突然增大,导致磁盘无法写入数据 由于磁盘写满,无法进行aof重写,减少aof文件体积; 需要对磁盘进行扩容,进行手动aof重写# redis-cli -p 6379 -h 127.0.0.1127.0.0.1:6379> BGREWRITEAOFredis 127.0.0.1:6379> Background append only file rewriting startedaof手动重写后,aof文件大...原创 2021-02-23 15:55:19 · 5869 阅读 · 0 评论 -
无法连接redis数据池,重启后连接提示(error) LOADING Redis is loading the dataset in memory
应用连接redis,无法获取数据池(1)可能是由于数据持久化卡住,无法重新写入数据如果 = yes : redis 会创建一个新的后台进程dump rdb。假设 :创建快照(硬盘上,产生一个新的rdb文件)需要 20s时间,redis主进程,在这20s内,会继续接受客户端命令,但是,就在这20s,内,创建快照!!!,出错了,比如磁盘满了,那么redis会认为,当前!!!,Redis is configured to save RDB snapshots, but is currently ...原创 2020-09-07 16:19:10 · 12531 阅读 · 0 评论 -
mysql5.7重置初始密码后,仍报错
先停止MySQL服务service mysqld stop编辑my.cnf配置文件vi /etc/my.cnf 添加配置[mysqld]skip-grant-tables重启mysql服务service mysqld restart登录数据库修改密码mysql -uroot -p #直接回车即可mysql> use mysql;mysql> update us...原创 2020-03-31 15:49:55 · 356 阅读 · 0 评论