martedì 21 maggio 2013

Oracle UCM: Manually transfer files between servers

Some months ago I wrote a post about migrating content between UCM instances using the "Transfer" functionality of the Archiver applet.

This is a great functionality despite it requires that both UCM instances have set up an outgoing connection to establish communication. To set up an outgoing provider is really simple but to be recognized after it has been setup it requires a restart of UCM instance.

In this post I will explain how to manually transfer files between two UCM servers without requiring outgoing connections.

First step we need to create an archive on source instance that we will transfer over to target intance. Go to Administration -> Admin Applets -> Archiver -> Edit -> Add

Once created export you content by clicking Action -> Export (you can additionally create export maps if needed)

By not creating an outgoing provider this UCM instance is not aware of other UCM servers so we need to manually transfer archive over to the destination UCM instance.

To do this login using SSH to source UCM server and go to archive directory that you were prompted to choose during UCM installation and should be something similar to this:



[oracle@ucm_source ~]$ cd /home/oracle/ucm/cs/archives/

In this folder you will have subfolder named after the archive name you selected in Archiver applet. In my case I created and archive called TestArchive so I have a folder called TestArchive.

We need to compress this folder and transfer it to destination UCM server.

[oracle@ucm_source archives]$ tar cvzf archive_file.tar.gz TestArchive

To perform transfer I use Secure Copy whose synthax is similar to this:

scp source_file.tar.gz <username>@<destination_ucm_server_IP>:/path_to_destination

In my case:

[oracle@ucm_source archives]$ scp archive_file.tar.gz oracle@

Once file is transferred logout from source UCM and login via SSH to the destination UCM server.

[oracle@ucm_destination ~]$  cd /home/oracle/ucm/cs/archives/

In this folder you will find the source_file.tar.gz transferred from source UCM.

Let's untar it:

[oracle@ucm_destination archives]$ tar xvfz archive_file.tar.gz
Once uncompressd this file will automatically create a folder like in the source UCM server called "TestArchive" which contains all content transferred.

Next step we need to edit collection.hda file which tells UCM server what archives it need to present in Archiver applet and add our new archive.

[oracle@ucm_destination archives]$ nano collection.hda

<?hda version="11gR1-" jcharset=UTF8 encoding=utf-8?>
@Properties LocalData
blDateFormat=M/d{/yy}{ h:mm[:ss]{ a}}!mAM,PM!tGMT+00:00
@ResultSet Archives
This is a test

Once done logout from SSH, go to Administration -> Admin Applets -> Archiver and you will see the manually transferred archive ready to be imported in your UCM instance.

That's all!!

giovedì 16 maggio 2013

Oracle UCM: customizing QuickSearch searches

QuickSearch is a really useful search tool in UCM because, as the word says, it allow to perform quick searches directly from every content server page just inserting search criteria and not going through the classic search form that searches content by filling certain metadata fields.

By default QuickSearch searches against dDocName, dDocTitle and dDocFullText, if enabled.

If you need to perform searches against other metadata you can easily customize it.

Go to Administration -> Admin Server

Click General Configuration and insert:




QuickSearchFields are metadata fields against which searches are performed.
QuickSearchOperators are matching criteria for searches i.e. matches, hasSubstring.

Please note that every metadata inserted in QuickSearchFields field has corresponding search operator in QuickSearchOperators field.

Once done restart your UCM instance.

If you like you can manually enter these configurations by adding them in /home/oracle/<your_ucm_directory>/cs/config/config.cfg

That's al!!

mercoledì 15 maggio 2013

Oracle UCM: Propagate metadata through folders

A basic task performed by UCM users is to create folders in the content server. Obviously in these folders there will be files and these files maybe should inherit some matadata from folders their are within. A problem that sometimes occurs is when folders are yet created and new metadata are added to the system. How can users modify folders metadata and propagate these metadata to child files and folders?

So...In this post I will briefly explain how to edit folders metadata and propagate these metadata changes.

Let's start saying that Folders_g component needs to be enabled in your UCM.

Propagation of metadata will affect child files and sub-folders contained in the folder itself. In this example I will update metadata of a folder named "D" so metadata propagation will affect both folders 2012, 2013 and all files contained in these two folders.

In order to propagate metadata first step is to select which metadata you wish to propagate.

Go to Administration -> Folder Configuration -> Information Field Inherit Configuration and select all metadata you need to propagate.


Now let's edit some metadata from our (existing) "D" folder. Click the folder you need to modify metadata...

...and choose Update.

After all metadata are modified you can propagate all changes down the "folder tree"

Please note that depending on how many content is stored "under" folders propagation process could take some time.
NOTE: As you probably noticed UCM doesent' have a folder structure as a common operating system.
It stores all contents in a "flat space" assigning a metadata to all files that are in a folder.
Metadata "FolderID" tells UCM that a file is contained in a certain folder. "FolderID" is automatically generated by UCM during folder creation, if not manually entered, and every folder has a unique "FolderID".
Folders themselves have "FolderID" metadata according to their position in the folder tree.
Top level folders have "FolderID" corresponding to the root folder which is Contribution Folders.

lunedì 6 maggio 2013

Oracle Database: Unlock user account via SQLPlus

As stated in "Oracle Database: Change Password Expiration" when installing DB I usually change password expiration for DEFAULT profile from 180days to UNLIMITED.

This is because if you create users that uses DEFAULT profile after 180days Oracle gives you:

ORA-28001: the password has expired can edit DEFAULT profile in two ways:

1) Via Enterprise Manager Console as stated in  Oracle Database: Change Password Expiration
2) Via SQLPlus

In this post I explain how to recover a locked user via SQLPlus and set DEFAULT profile with an unlimited password expiration time.

Connect to the instance:

[oracle@oracle ~]$ sqlplus

SQL> conn sys/password@sid as sysdba

SQL> select username,account_status from dba_users;  

The above command will return all dba users and their corresponding status presenting them in a view similar to this:


Now let's unlock the user(s):

SQL> alter user [user_name] identified by [password] account unlock;

Then modify DEFAULT profile setting the password expiration time to UNLIMITED:


That's all!!