本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
Linux中使用expect插件执行MySQL命令#!/bin/bash# 安装expect插件yum install -y expect# 修改密码为Huawei@123!pass=`awk -F"[ :]+" 'NR==1{print $NF}' /root/.mysql_secret`/bin/expect << EOFspawn /usr/bin/mysql -h127.0.0.1 -uroot -p`echo -e $pass`expect "mysql>"send "SET PASSWORD FOR root@localhost=PASSWORD('Huawei@123!');"send "\n"expect "mysql>"send 'flush privileges\n'expect "mysql>"send 'quit\n'interactEOF
Oracle使用||与concat实现字段或字符串拼接SQL> select first_name||'''s SALARY is : '||salary as "name,sal" from employees e where e.employee_id=100;name,sal----------------------------------------------------------------------------Steven's SALARY is : 24000SQL> select concat(first_name||' ',salary) as "name,sal" from employees e where e.employee_id=100;name,sal-------------------------------------------------------------Steven 24000SQL> select concat(first_name||'''s salary is ',salary) as "name,sal" from employees e where e.employee_id=100;name,sal-------------------------------------------------------------------------Steven's salary is 24000
MySQL 连接错误过多:is blocked because of many connection errors; unblock with 'mysqladmin flush-host2019-10-08 20:01:42.935 ERROR [dhc-auth,,,] 14140 --- [reate-149151619] com.alibaba.druid.pool.DruidDataSource   : create connection SQLException, url: jdbc:mysql://server-pc:3309/ag_auth_v1?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&&serverTimezone=UTC, errorCode 1129, state HY000 java.sql.SQLException: null,  message from server: "Host '192.168.31.103' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'" at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:127) ~[mysql-connector-java-8.0.11.jar:8.0.11] at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95) ~[mysql-connector-java-8.0.11.jar:8.0.11] at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8...
 
0
ORACLE19c 修改pdb字符集编码一、 db默认字符集AL32UTF8Specify the database character set when you create the database. Starting from Oracle Database 12c Release 2, if you use Oracle Universal Installer (OUI) or Oracle Database Configuration Assistant (DBCA) to create a database, then the default database character set used is the Unicode character set AL32UTF8.12.2之前版本的数据库中,数据库的默认字符集都是根据操作系统的字符集来定的。在12.2中,在安装数据库的时候,数据库默认的字符集为AL32UTF8。二、  PDB支持不同字符集Per-PDB Character Set的有几个前提条件:1) CDB must be AL32UTF82) Application Container requires single character set3) National character set also supported per PDB4) Truncation of data can occur in cross-container queries if data conversion to UNICODE causes expansion从12.2起引入新特性同一CDB中每个PDB可以使用不同的字符集,前提CDB是AL32UTF8。 如CDB是AL32UTF8,其中的PDB1为ZHS16GBK , 从其它CDB plug-in一个其他字符集的PDB也是允许的,在plug-in PDB过程中并不会转换字符集。对...
Oracle Automating Database Startup/Shutdown on Linux Stopping and Starting Oracle SoftwareThis chapter describes how to identify Oracle Database processes, and provides basic information about how to stop and restart them. It also describes how to set up automatic startup and shutdown of the Oracle Database. It contains the following sections:Stopping and Starting Oracle ProcessesAutomating Shutdown and Startup2.1 Stopping and Starting Oracle ProcessesThis section describes how to stop and start Oracle processes. It contains the following topics:Stopping and Starting Oracle Database and Automatic Storage Management InstancesStopping and Starting Oracle Cluster Services Synchronization DaemonStopping and Starting an Oracle Net ListenerStopping and Starting Oracle Ultra SearchStopping and Starting Oracle Enterprise Manager Database ControlStopping and Starting Oracle Management Agent2.1.1 Stopping and Starting Oracle Database and Automatic Storage Management Instance...
本文介绍如何使用 DMU 工具在 Oracle 数据库 12cR2 (12.2.0.1) 中将 PDB 字符集从 WE8MSWIN1256 更改为 ALT32UTF8。目录:我们要做什么“用不同的字符集插入PDB”PDB 字符集的迁移1.我们要做的“用不同的字符集插入PDB”:我们拥有:– CDB“wadhah”与PDB“wadhahpdb”,当它们具有相同的字符集WE8MSWIN1252时– CDB“daouehi”,字符集为AL32UTF8目标;从 CDB wadhah 中拔下 PDB wadhahpdb — >用 CDB daouehi 插入 PDB wadhahpdb NameCharacter SETCDBDaouehiAL32UTF8PDBWadhahpdbWE8MSWIN1252CDBWadhahWE8MSWIN1252步骤 1:使用 DBCA 从 PDB SEED 创建可插入数据库 12cR2(创建 PDB wadhahpdb)步骤 2:使用 DBCA 拔出可插拔数据库 12cR2(PDB wadhahpdb)步骤 3:使用 DBCA 从不插电的 PDB 创建可插入数据库 12cR2(PDB wadhahpdb) 在PDB wadhah插拔之后:a. 检查 CDB “daouehi” 的字符集:b.检查 CDB “daouehi” 中 PDB “wadhahpdb” 的字符集:2. PDB 字符集的迁移:我们正在使用Oracle数据库工具Database Migration Assistant for Unicode。步骤 1:执行 DMU 工具步骤 2:创建与 PDB 的连接:步骤3:浏览连接:由于找不到包,我们...
Talend data integration对接oracle提取过滤数据导入数据库新表TDI对接oracle提取数据PDA全文1,环境介绍。 Oracle 19C IP: 192.168.1.252  账号:hr  密码: 123456789,使用oracle 19c的hr账号schema自带数据数据集成工作:  talend data intagration 8.0 2,利用 talend 数据集成工作,生成一个新表 emp_con,包含  name,salary,country_name ,将hr账号下的数据提取出来,再过滤后,导入新表emp_con。 3,  HR模式下的ER图如下:4,打开 talend 软件 ,新建一个emp_con工程,再新建作业文件夹,然后新建作业名为: EMP_SAL_Country5,点击 元数据 , 数据库连接  点右键  新建连接  emp_oracle ,选择  数据库类型   oracle with service name 后,填写相关账号与密码 ,ip等信息。如下图6, 要提取 country_name,First_name,Salary,需要关联操作四个表,以下是相关运行SQL。SELECT e.FIRST_NAME ,e.SALARY ,e.DEPARTMENT_ID  FROM HR.EMPLOYEES e;SELECT  d.DEPARTMENT_ID ,d.LOCATION_ID  FROM  HR.DEPARTMENTS d ;SELECT l.LOCATION_ID ,l.COUNTRY_ID  FROM HR.LOCATIONS ...
 
0
Oracle 向表中添加百万数据--创建表create table test_p_2(       log number(10) primary key,       name varchar2(20),       psaaword varchar2(20));create sequence seq_log;insert into test_p_2 values(seq_log.nextval,'kikiwen','123456');--随机向一张表插入 1百万数据declare--数据块头    v_cnt number :=0;--定义计数器begin--数据块执行部分    for i in 1..1000000 loop --for循环tou (for 条件 loop     end loop)      v_cnt := v_cnt +1;--循环一次计数器+1         insert into test_p_2 values(                seq_log.nextval,--获取下一个序列                DBMS_RANDOM.STRING ('a', 5),--随机产生5个26字母的任意大小写                DBMS_RANDOM.STRING ('a', 10)); --随机产生10个26字母的任意大小写    if v_cnt >= 10000 then --if条件判断(当数据...
 
0

Oracle 触发器 (trigger)

发表者:admin分类:数据库2022-08-19 12:29:17 阅读[344]
Oracle 触发器 (trigger) 触发器是许多关系数据库系统都提供的一项技术。在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过程的PL/SQL块。1 触发器类型      触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来启动运行。  即触发器是当某个事件发生时自动地隐式运行。并且,触发器不能接收参数。所以运行触发器就叫触发或点火(firing)。  ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE操作或对视图进行类似的操作。  ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动与关闭等。  所以触发器常用来完成由数据库的完整性约束难以完成的复杂业务规则的约束,或用来监视对数据库的各种操作,实现审计的功能。 1.1 DML触发器    ORACLE可以在DML语句进行触发,可以在DML操作前或操作后进行触发,并且可以对每个行或语句操作上进行触发。1.2 替代触发器    由于在ORACLE里,不能直接对由两个以上的表建立的视图进行操作。所以给出了替代触发器。它就是ORACLE 8专门为进行视图操作的一种...
Oracle通过PLSQL+游标删除大量创建的对象1,由于执行大量SQL脚本时,非发现通过SYSTEM账号执行的,所以创建了很多对像objects,本应是创建在其它账号模式下的,所以需要删除。但是创建的资源比较多,靠手动清理,会有遗留。2,这里就想到先查出时间点内创建的对象,再通过PLSQL来删除掉。3,查看今天创建的对象,确认都是需要删除的,使用以下命令:        SELECT o.OBJECT_NAME, o.OBJECT_TYPE          FROM all_objects o         WHERE     o.CREATED > TO_DATE ('2022-08-06', 'yyyy-mm-dd')               AND o.OWNER = 'SYSTEM' ;4,发现在TABLE,INDEX, SEQUENCE三种类型,由于INDEX索引只是依附表的,所以只需要删除TABLE与SEQUENC,就可以了。具体PLSQL内容如下:DECLARE    CURSOR cur_d_oj IS          SELECT o.OBJECT_NAME, o.OBJECT_TYPE            FROM all_objects o           WHERE     o.CREAT...
    总共51页,当前第3页 | 页数:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13