Posts

Redis user permissions (ACL) and python connection

 Recently, I was working on setting up a redis cluster along with separate users for readwrite and readonly. I setup the readonly user using the below privileges (ACLs):   user redisreadonly on >mySuperSecretPassword ~* resetchannels -@all +@read +ping +asking   Once this is setup, I wrote a simple program in python to connect to the redis cluster using the readonly credentials and print the number of keys.   #!/usr/bin/env python3 """ pip3 install redis """ from redis.cluster import RedisCluster, ClusterNode # ─────── Cluster connection ─────── startup_nodes = [ ClusterNode("redis_host_1", 6379), ClusterNode("redis_host_2", 6379), ClusterNode("redis_host_3", 6379) ] rc = RedisCluster(startup_nodes=startup_nodes,decode_responses=True,username='redisreadonly',password='mySuperSecretPassw...

Rebuild reporting database

In one of my previous posts , I had spoken about creating a reporting database that is editable at the same time, though the edits are transient. The last month, I faced an interesting situation wherein we had to rebuild this reporting database. In this post, I'll talk about rebuild the reporting database when it is corrupted. Context The standby database has been corrupted due to a server crash and needs to be rebuilt from the primary database. Solution I followed the steps mentioned in this post about creating a physical standby database. The steps in the pre-requisites can be skipped because they are already existing. The rest of the steps hold good!

Creating a physical standby database

Requirement Create a standby database for the primary production database. Pre-requisites 1. The primary database is in archive log mode. 2. Primary and standby database names: Primary DB Name: PRIM Primary DB Host: primary.hostname.com Standby DB Name: STBY Standby DB Host: standby.hostname.com 3. Initialization parameters required for enabling standby instance to be set on the primary: *.LOG_ARCHIVE_CONFIG='DG_CONFIG=(PRIM,STBY)' *.LOG_ARCHIVE_DEST_2='SERVICE=STBY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STBY' *.log_archive_dest_state_2='ENABLE' *.log_file_name_convert='/u001/app/oracle/stby/data/','/opt/apps/prim/data/' *.standby_file_management='auto' *.db_file_name_convert='/u001/app/oracle/stby/data/','/opt/apps/prim/data/' *.fal_client='PRIM' *.fal_server='STBY' *.db_name='PRIM' *.db_unique_name='PRIM' 4. The listener and tnsnames to be modified on the pr...

ORA-07445 [kopxccc()+124] error trying to submit a concurrent request

I am writing this blog entry to share an interesting error with you. There is a parameter ORA_NLS10 without setting which, the database was throwing a lot of ORA-07445 errors. I spoke about the ORA_NLS10 parameter in a previous post. A related issue was occuring here too. Issue Unable to submit concurrent requests. Receiving the below error: APP-FND-01564: ORACLE error 3113 in FDFDDS_RAISE_DFF_COMPILED Also, receiving ORA-07445 errors in the alert log. Mon May 17 05:54:00 2010 Completed: ALTER DATABASE OPEN Mon May 17 05:57:12 2010 Errors in file /u005/app/oracle/cpe2eprd/cpe2eprddb/10.2.0/admin/cpe2eprd_cpeidb/udump/cpe2eprd_ora_1094.trc: ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] [] Mon May 17 06:03:18 2010 Errors in file /u005/app/oracle/cpe2eprd/cpe2eprddb/10.2.0/admin/cpe2eprd_cpeidb/udump/cpe2eprd_ora_2966.trc: ORA-07445: exception encountered: core dump [kopxccc()+124] [SIGSEGV] [Address not mapped to obj...

WF Mailer Error - Unable to make a connection with the user and responsibility

Yesterday, I faced an issue while starting WF Mailer in a development instance. It was a clone from production and was recently patched, during the course of which, autoconfig was also run. Without further ado, let me explain the problem and the solution: Issue Receiving below error while trying to start WF Mailer: [Mar 30, 2010 4:22:44 AM CDT]:1269940964344:Thread[BES Dispatch Thread,5,main]:0:-1:suomt32l:10.6.71.100:-1:-1:ERROR:[SVC-GSM-WFMLRSVC-801965 : oracle.apps.fnd.cp.gsc.SvcComponentContainer.handleComponentEvent(int, String, String)]:Could not start component; performing rollback -> oracle.apps.fnd.cp.gsc.SvcComponentException: Validation failed for the following parameters -> >>>>>>>>>>>>>>{FRAMEWORK_USER=Unable to make a connection with the user and responsibility}.<<<<<<<<<<<<<< Parameters were -> {INBOUND_MAX_IGNORE_SIZE=1000, INBOUND_MAX_LOOKUP_CACHE_SIZE=100, ATTACH_IMAGES=Y, ALL...

Quirky 11i Apps Patch queires

Long time since I blogged. I was a bit busy with my vacations and work! Anyway, check out my travelogue , if you are interested enough. This time, I plan to write about a few quirky and rarely used queries to find out whether a patch is applied. Method 1 Check Patches applied from Oracle Applications Manager (OAM). a) Connect to OAM: http://hostname.domain:port/servlets/weboam/oam/oamLogin Go to Site Map-->Maintenance-->Applied Patches Enter Patch ID and press 'Go' See if Patch is returned. Method 2 Use 'adphrept' utility documented in Metalink Note:181665.1, section 'Retrieving information on patches or files that have been applied via adpatch'. $AD_TOP/patch/115/sql/adphrept.sql (available on admin and web nodes in multi tier APPL_TOP) (1) Patch History report usage: $AD_TOP/patch/115/sql/adphrept.sql <query_depth> < bug_number or ALL> <bug_product or ALL> \ <end_date_from (mm/dd/rr or ALL)> <end_date_to (mm/dd/rr or ALL)> \...

Build a Reporting Database using standby and flashback

It's been a long time since I posted something. So, here's something worthwhile. Thanks to my colleague Kevin who devised this method! Requirement A reporting database to be refreshed daily from the UAT instance. The reporting database should be available during the daytime and the refresh can happen during the night. Solution 1. Initially, build the reporting database as a standby database. 2. Once the Managed Recovery process (MRP) is initiated and the standby is in sync with the primary database, cancel the MRP. SQL> alter database recover managed standby database cancel; 3. Enable flashback in the standby database. Note that the DB should be in mount state for this. SQL> startup mount force; SQL> alter database flashback on; 4. create guaranteed restore point. SQL> drop restore point before_open; SQL> create restore point before_open guarantee flashback database; 5. Activate the standby database. SQL> alter database activate standby database; SQL> start...

WGET Syntax for downloading patches from Metalink

I am sure everyone knows this but just to emphasise the point (and ease the pain somewhat), Classic MetaLink Retires November 6, 2009 . Extract of the text of email from Oracle Support: During the weekend of November 6 – 8, 2009, My Oracle Support, Oracle's next-generation customer support platform, will be upgraded and Classic MetaLink will be retired. Moreover (and this is the most painful part especially for Apps DBAs), the ftp to the patch site will also retire on 06-Nov-2009. :( Below is the extract of the message displayed on updates.oracle.com ftp site: 230- This service will be retired on November 06, 2009 and "My Oracle Support" 230- will be the only interface for downloading the patches and updates. To 230- search and download patches from "My Oracle Support" users are required 230- to login to https://metalink.oracle.com and then go to "Patches & Updates" 230- tab. Though I do NOT like it, I suppose I have to force myself to use wg...

Popular posts from this blog

EXCEPTION_ACCESS_VIOLATION in Jinitiator and IE crashes

Version of mod_security with EBS 11.5.10.2

Read a file and extract specific lines using Native Ansible Modules