We are going to demonstrate how to provision Oracle WebLogic Server in less than 1 minute Using Docker running on Ubuntu.
To follow this tutorial, you will need Ubuntu 64-bit up and running. We will be using Ubuntu version 16.04 in our fancy VirtualBox sandbox machine. This is because Docker requires a 64-bit version of Ubuntu as well as a kernel version equal to or greater than 3.10.
1. Installing docker on Ubuntu:
#Add the GPG key for the official Docker repository to our system: sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D #Add the Docker repository to apt sources: sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main' sudo apt-get update #we make sure that we use Docker repo instead of default Ubuntu repo: sudo apt-cache policy docker-engine #installing Docker $ sudo apt-get install -y docker-engine
Verifying installation and displaying information about Docker:
$ docker images -a REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest 48b5124b2768 3 months ago 1.84kB $ docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. #Other check commands $ sudo systemctl status docker $ docker info
2. Provisioning WebLogic Server Domain
Our docker is ready to roll so we navigate to docker hub website:
or simply go to https://hub.docker.com and search for “weblogic” docker images.
@ https://hub.docker.com/r/playniuniu/weblogic-domain we copy the following command:
docker run -d -p 8001:8001 –name=wlsadmin playniuniu/weblogic-domain:184.108.40.206 startWebLogic.sh
Run it and after a while (depends on your network speed) a brand new WebLogic Server domain is up and running:
$ docker run -d -p 8001:8001 --name=wlsadmin playniuniu/weblogic-domain:220.127.116.11 startWebLogic.sh Unable to find image 'playniuniu/weblogic-domain:18.104.22.168' locally 22.214.171.124: Pulling from playniuniu/weblogic-domain 8d30e94188e7: Pull complete 1d43e94144e5: Pull complete ... Status: Downloaded newer image for playniuniu/weblogic-domain:126.96.36.199
Voila! We can login to WLS Admin Console http://ubuntuhost:8001/console using credentials weblogic/welcome1 and check if managed server (AdminServer) is up.
Learn more about Docker:
Oracle Compute as part of Oracle Cloud Service, is a standards-based infrastructure service. In Network section we control the ways of how we can connect to our Oracle Cloud Services.
Access to Oracle Compute instances is possible in several ways.
We can use a web browser to access the web console, we can access the REST API directly, or we can use the command-line interface. Secure access is provided by protocols such as SSH and RDP. We can also set up a VPN tunnel to provide secure access to instances in our Oracle Compute Cloud Service network.
Previously we were looking at How to get 30 days Free Oracle Cloud Subscription Plan PaaS IaaS. Now let’s take a look at the Oracle Database Public Cloud Services and one of its offerings: Oracle Database Cloud Service (DBaaS).
We will create brand new 12c Database instance, enable remote access and using Oracle SQL developer we will connect from our local machine to the newly created database. Finally we will show how to monitor the database instance with OEM Database Express 12c and DBaaS Monitor.
Creating Database as a Service Instance in Oracle Database Cloud.
- Login to my services using the URL provided by Oracle in a welcome email:
- Create DB Cloud Service Instance:
We will create our demo database with a backup configuration enabled using both, Cloud Storage and Local Storage. This will allow us in the future creating Oracle SOA Cloud Service instance.
Oracle now offers the Free Oracle Cloud Promotion plan. With this promotion, we start with $300 (€260) Cloud Service credits in your Oracle Cloud Services Account. This balance can be used towards activating and using any of the metered Oracle Cloud Services in the following categories: PaaS, IaaS, Big Data and Middleware Cloud Services, which are available as Pay-as-You-Go subscriptions.
Previously we were playing with free trial subscription of Oracle Database Schema Cloud Service. This tutorial however is different! We are going to try a 30 days free subscription plan, which includes all we need to get started with Oracle Cloud: Compute, Storage, Database, Database Backup, MySQL, Java, SOA, Application Container Cloud and Developer Cloud Services.
Oracle Cloud is offering a free of charge 30 days trial subscriptions to Oracle’s Platform (PaaS) and Infrastructure (IaaS) Cloud Services. One of the services is Oracle Database Cloud Service.
Users can find two ways to discover Oracle Cloud. One way is to get 30 days trial subscription to Platform & Infrastructure services. Second way is to register for Application (SaaS) and Data (DaaS) quick tours which offers very nice interactive application demos, videos and e-books.
One of the Platform & Infrastructure services is Oracle Database in the Cloud providing several deployment choices such us single schemas, dedicated pluggable databases, virtualized databases and more. Our focus for today is to activate 30 days subscription to Oracle Database Schema Cloud Service and application express (APEX). Continue reading…
I’ve been working on proof of concept project for Data Redaction in Oracle Database 12c. Hard to say but POC has proven that data redaction has couple of flaws or according to Oracle “constraints”. Therefore before we could continue with implementation we would have to find solutions to below findings. Any feedback from the readers would be much appreciated.
Test scenario: Database user schema is “APEX_ZION”. A table “DEMO_CUSTOMERS” has data redaction enabled on CUST_POSTAL_CODE column, masking data using randomly generated characters. Here is how to enable data redaction. Another user schema “TEST_USER” has granted SELECT privileges on DEMO_CUSTOMERS table. The goal is to mask sensitive data for test_user only. So when we login to a database as “APEX_ZION” and we run an SQL query we can see true data:
SQL> SELECT CUST_POSTAL_CODE FROM APEX_ZION.DEMO_CUSTOMERS; CUST_POSTAL_CODE ---------------- 20166 30320 02128 60666 11371 63145 06096 7 rows selected
Next we run the same SQL query as “test_user” and we can see masked data only:
SQL> SELECT CUST_POSTAL_CODE FROM APEX_ZION.DEMO_CUSTOMERS; CUST_POSTAL_CODE ---------------- ]2x#( _UJX/ \Bzy# z:*Qr L`!<I oBE&5 N"2G] 7 rows selected
So far so good. Here comes the funny part…
Data Redaction provides a way to define masking policies for an application. Oracle Data Redaction provides functionality to mask (redact) data that is returned from user SELECT queries. The masking takes place in real time. The difference between Oracle Data Masking and Data Redaction is that Data Redaction doesn’t alter underlying data in the database; it redacts the data only when it is being displayed. Data Redaction can be applied conditionally, based on different factors such as user, application identifiers, or client IP addresses. Data Redaction is available in Oracle Database 12c and now also in 11g Release 2, patch set 188.8.131.52. Data Redaction is licensed as part of Oracle Advanced Security.
EDIT: Be aware of Oracle’s data redaction “constraints”. Read David Litchfield’s white paper “Oracle Data Redaction is Broken” here (PDF). I checked all three described methods in my labs in September 2016 and using “RETURNING INTO” and “XMLQUERY()” methods appears to be fixed. However one gap still persist in a Database 12c version 184.108.40.206 – “an iterative inference attack”. It is still possible to be executed disclosing redacted data even to a regular test_user schema!
Below TEST 3 result based on David’s white paper example:
select cc from APEX_ZION.REDACTIONTEST; CC ------- XXXXXXXXXXXXXXXX --an iterative inference attack exec p_undoredaction; PL/SQL procedure successfully completed. CC: 4111222233334444
Data redaction doesn’t prevent application logic, operations like inserting, updating or deleting data are perfectly consistent with original data. If the application user creates a view on redacted table, the view will also contain the redacted data.
Quick guide on how to implement SSL in WebLogic Server domain. Custom Identity and Custom Trust with self-signed certificate.
First, let’s create custom directory to store self-signed certificate, custom keystore and custom trust store files:
mkdir -p /u01/app/oracle/config/domains/wls12c_domain/security/SSL
Modify input variables according to your requirements and run below script on WebLogic Server host. This script will automate entire procedure and does the following:
- create keystore
- create self-signed certificate
- export the server certificate
- create Trust Store
Oracle Live SQL is a free online tool to learn and code SQL & PL/SQL in Oracle Database. Learn and share SQL, for free.
Get instant access to the Oracle Database and learn from a collection of community scripts and structured tutorials. Save and share SQL sessions with others!
Oracle Live SQL exists to provide the Oracle database community with an easy online way to test and share SQL and PL/SQL application development concepts.
- Browser based SQL worksheet access to an Oracle database schema
- Ability to save and share SQL script
- Schema browser to view and extend database objects
- Interactive educational tutorials
- Customized data access examples for PL/SQL, Java, PHP, C
- Learn more by using Live SQL yourself. Login to OTN and get started.
Live SQL Content
SQL Queries, PL/SQL Procedures, Functions, Packages and more!
Browse the collection of SQL scripts and tutorials: View ALL
Oracle Enterprise Manager Express is a Web-based interface for managing an Oracle database 12c. It enables users to perform basic administrative tasks such as managing users, managing database initialization parameters, memory or storage. You can also view performance and SQL Tuning Advisor information, check status information about your database and pluggable databases.
In Oracle Database 12c Release 1, the concept of multi-tenant environment has been introduced. The multi-tenant architecture enables an Oracle database to function as a multi-tenant container database (CDB) that includes zero, one, or many customer-created pluggable databases (PDBs).
A CDB includes the following components:
Root named CDB$ROOT, stores Oracle-supplied metadata and common users. An example of metadata is the source code for Oracle-supplied PL/SQL packages. A common user is a database user known in every container.
A PDB appears to users and applications as if it were a non-CDB. For example, a PDB can contain the data and code required to support a specific application (e.g., APEX).
Each of these components is called a container. Therefore, the root is a container, the seed is a container, and each PDB is a container.
In this tutorial we will show two different types of configurations of Enterprise Manager Express one for CDB and the second for PDBs only. Imagine yourself as a dba who has full access to non-CDB/CDB/PDB, OEM Express 12c will allow you to manage CDB and all PDB containers from one central console. On the other hand you would like to allow regular users to login to OEM Express 12c as well, but grant them access to their PDBs only.