MAS 9 Installation Series Part 6: Migrating Your Data from Maximo 7.6Single Node OpenShift (SNO) Edition

This is the point in the series where the new MAS 9 environment meets the Maximo 7.6 system that contains your operational history.

The good news is that IBM’s supported path is a database upgrade, not a conventional data migration.

Manage connects to a copy of the existing Maximo database and upgrades its schema in place. Data is not exported, transformed, mapped, or reloaded. Data, configurations, workflows, automation scripts, BIRT reports, escalations, saved queries, and start centers remain in the database and come across with it.

That does not make the work effortless; it makes preparation more important. This article covers:

  • Choosing the migration path – direct database upgrade versus a fresh start with selective migration
  • Preparing the 7.6 database – the integrity checks that prevent mid-upgrade failures
  • Packaging customizations – what carries over automatically and what needs the customization archive
  • Running the upgrade – configuring Manage activation against your existing database
  • Post-upgrade validation and cutover – users, attachments, reports, integrations, the smoke test, and the production cutover

Choose the Migration Path

There are two legitimate approaches.

Path A: Direct database upgrade. Point the Manage activation at a copy of the 7.6 database. The process upgrades the schema and brings over the data, history, configurations, and customizations. This is IBM’s supported upgrade path and will suit most organizations with a functioning 7.6 environment.

Path B: Fresh install with selective migration. Activate Manage against a new database, then bring over only the data and configuration you choose. Migration Manager can handle configurations; the integration framework or tools such as MxLoader can handle data. This takes more work—often weeks to months—but can be appropriate for a heavily customized or troubled environment where leaving old, unused material behind is worth the effort.

ConsiderationPath A: Direct UpgradePath B: Fresh Start
EffortDays to weeksWeeks to months
HistoryComplete work order and asset history preservedOnly selected history is brought over
Unused legacy materialCarried over with the databaseLeft behind by design
Old customizationsCarry over, then retestRebuild or consciously retire
RiskConcentrated in one upgrade eventSpread across many smaller moves
Best fitMost organizations with a functioning 7.6Heavily customized or troubled environments

For most teams, use the direct upgrade unless the existing environment has extensive abandoned customizations, unfinished integrations, or serious data-quality problems. A technical upgrade followed by improvement is usually less risky than combining both projects. The rest of this article follows Path A; much of the preparation also applies to Path B.

Prerequisites

Before you begin, confirm the following:

  • The MAS 9 environment is healthy. The cluster and MAS Core should be running, and SMTP should be configured. If Manage was already activated against an empty database, plan to deactivate and reactivate it against the 7.6 copy, or use a workspace where Manage has not yet been activated.
  • Maximo is at a supported version. The source must be Maximo 7.6.0.10, 7.6.1.2, or 7.6.1.3 for the direct upgrade described here. Apply the required fix pack first if it is older. IBM Control Desk follows a Maximo IT path with its own requirements.
  • You have a restored copy of the production database. The first upgrade must be a rehearsal against a copy, not production.
  • You have the 7.6 maximo.properties crypto values: mxe.security.crypto.key and mxe.security.cryptox.key. Without them, encrypted properties in the database cannot be decrypted.
  • You have an inventory of Java classes, database scripts, modified deployment descriptors, XSL files, and other customizations.
  • You have a web server that the cluster can reach. Manage downloads the customization archive over HTTP or HTTPS.

Step 1: Build your Data Inventory

Most of what matters lives in the database. The table below sets out how each category migrates: most items come across with the database, while a few sit outside it and need deliberate handling.

ItemHow it migrates
Data (assets, work orders, history)In the database. Comes over automatically.
Configurations, screens, workflowsIn the database. Comes over automatically.
Automation scriptsIn the database. Come over automatically.
BIRT reportsIn the database. Come over automatically.
Java class customizationsCustomization archive (Step 3). Retest each customization.
LDAP / VMMSYNC / LDAPSYNC setupDoes not migrate. Identity is handled at the MAS level (Part 5).
Attachments (doclinks)Files must be moved; paths must be updated (Step 5).
System properties with URLs/pathsMigrate, but URLs and paths may still point to the old environment. Update post-upgrade.
Integration endpointsMigrate, but external systems need new URLs, network access, and testing.
Industry solutions / add-onsMust be selected during activation to match the 7.6 installation.

Two items deserve a closer look. First, add-ons: Scheduler, Linear, Calibration, and Mobile are included capabilities in MAS 9, so verify the current licensing and bundling for your MAS version before assuming an add-on must be purchased. Second, Java customizations: they are supported through the archive, but each one increases the work required for later updates. Identify candidates for conversion to automation scripts, even if that work is deferred.

Reality CheckIf an inventory item cannot be explained, do not quietly remove it. Document it, carry it over during the rehearsal, and schedule its retirement once the dependent business process is understood.

Step 2: Prepare the 7.6 Database

The activation process can fail partway through if the source database has unresolved configuration or integrity problems. Run these checks on 7.6, in order.

Clear Pending Configuration Changes

Apply or discard pending database configuration changes before the upgrade. Both queries should return zero:

SELECT count(*) FROM maxobjectcfg WHERE changed != ‘N’; SELECT count(*) FROM maxsysindexes WHERE changed != ‘N’;

If either query returns a nonzero value, use Database Configuration in 7.6—admin mode and configdb—until the pending changes are resolved.

Run the Integrity Checker

Run the integrity checker from the 7.6 administrative workstation:

rem On the 7.6 administrative workstation cd install_home\maximo\tools\maximo integrityui.bat
  • Start in Report mode with Repair Mode unchecked, and review the log it writes to the tools log directory.
  • If it reports errors, run it again in Repair mode and then run configdb.
  • Repeat the report/repair cycle until the report is clean. Do not carry known integrity errors into the upgrade.

Disable Custom Database Machinery

Disable customer-created database triggers, stored procedures, and views before the upgrade. The schema changes can cause old triggers to fire at the wrong time. Re-enable and retest each item individually after the upgrade.

Back Up and Create the Rehearsal Copy

Take a full production backup, then restore a copy to the SQL Server, Db2, or Oracle instance reachable by the MAS cluster. Upgrade this copy first, not production. Keep production running untouched while you rehearse.

The Copy RuleThe first time MAS touches your Maximo database, it must be a disposable copy. The schema upgrade is one-way: there is no downgrade script, only your backup. Rehearse on a copy, time it, record every prompt and decision, and only then schedule production.

Step 3: Package Customizations

Java customizations move to MAS in a customization archive, a ZIP that mirrors the relevant folder structure of the old SMP directory. During activation, Manage downloads it and builds it into the application images, replacing the role that rebuilding maximo.ear played in the WebSphere deployment.

The archive should include, in the proper package hierarchy:

  • Custom Java class files in the same businessobjects/classes-style paths used in SMP
  • Customer database scripts driven by a_customer.xml
  • Modified web.xml, ejb-jar.xml, or webservices.xml, but only when you actually changed them
  • XSL customizations and other custom resources

Zip the archive and host it on a web server the cluster can reach over HTTP or HTTPS; use an appropriately secured hosting method for production, and confirm the cluster itself can retrieve the URL, not just the bastion host. For a development rehearsal, this is enough:

# Quick-and-dirty archive hosting for a dev rehearsal (bastion host) cd /opt/ibm/mas9/customizations zip -r manage-customization-archive.zip businessobjects/ maximouiweb/ tools/ python3 -m http.server 8080 # Archive URL: http://[bastion-ip]:8080/manage-customization-archive.zip
web.xml WarningDo not place the old 7.6 web.xml directly in the archive; the Manage version differs. IBM’s guidance is to deploy once without the customization, extract the new web.xml, reapply your changes to that version, and then include it in the archive.

Step 4: Configure Manage and Run the Upgrade

This resembles the Manage activation from Part 5, with three differences: the database you point at, the encryption keys, and the customization archive.

The Database Configuration

Create the JDBC configuration as in Part 5, but point it at the restored 7.6 database copy. Then, in the Manage deployment configuration:

  • Deselect “System managed” in the database section; you are supplying an existing schema.
  • Specify the schema, tablespace, and index space used by 7.6, rather than the values a fresh installation would create.
  • Provide the old encryption keys – set MXE_SECURITY_OLD_CRYPTO_KEY and MXE_SECURITY_OLD_CRYPTOX_KEY to the values of mxe.security.crypto.key and mxe.security.cryptox.key from the old maximo.properties. Manage must decrypt existing values before it can re-encrypt them with new keys.

Components and the Archive

In the same configuration screen, provide the customization archive URL and select the components and industry solutions that match the 7.6 installation. The upgrade runs update scripts for the selected components; omitting one that exists in the database can produce a failed or inconsistent upgrade.

Activate and Watch

Activate Manage and monitor the workload:

# Watch the activation do its work oc get pods -n mas-sno-manage -w oc logs -f -n mas-sno-manage -l mas.ibm.com/appType=maxinstPod

Duration depends on database size and the number of releases crossed. A small database may finish within two hours; a large database with years of history may take considerably longer, which is why the rehearsal on a copy gives you a defensible estimate. If the upgrade fails, the logs should identify the script or object involved; pending configuration changes, custom triggers, and integrity errors are the common causes.

Step 5: Validate Before Inviting Users

The pipeline completing is not the end of the work. Complete these checks before any user signs in.

Check Integrity Again

Run the integrity checker from within Manage after the upgrade and confirm it is clean. This is evidence that the upgraded schema is coherent.

Validate Users and Authentication

Authentication now belongs to MAS rather than application-server security. The upgrade creates corresponding MAS entries for existing Maximo users, and MAS pushes users and groups into Manage. Three consequences follow:

  • Retire the old VMMSYNC and LDAPSYNC cron tasks; directory synchronization is configured at the MAS level, using the identity provider from Part 5.
  • Every migrated user needs a Base, Premium, or Self-Service entitlement, and entitlements consume AppPoints. Dormant accounts can therefore become a licensing issue, so clean them up before go-live or at least understand the numbers.
  • Manage security groups and authorizations should remain intact; the change is how users reach the login screen, not what they can do after signing in.

Move Attachments

Doclinks previously pointed to a file system visible to WebSphere; your Manage pods cannot see it. Move the files to storage mounted by the cluster, such as a persistent volume, or to object storage. Update mxe.doclink.path01 and related properties to the new location, then test downloads and uploads.

Review Properties, Reports, and Integrations

  • System properties – review them for URLs and paths that still reference the old environment; mxe.oslc.webappurl and related properties should point to the new Manage URL.
  • BIRT reports – they come over with the database. Run the five most-used reports and check output, fonts, and logos.
  • Integrations – publish channels, enterprise services, and endpoints migrate as configuration, but external callers need the new URL, and outbound endpoints need network access from the pods, not merely from the bastion. Test every interface end to end.

Run a Business Smoke Test

Using copied data, work through the inventory from Step 1: create and approve a work order, issue parts against it, close it, generate a PM, enter time, and exercise every customization on the list. Include two or three actual end users; they often find problems quickly and can become useful go-live advocates.

Production Cutover

Once the rehearsal upgrade validates cleanly, cutover is a controlled runbook:

  • Freeze 7.6 configuration and data entry, and disable cron tasks and integrations.
  • Take the final production backup and restore it to the MAS-reachable database server.
  • Run the upgrade using the rehearsal notes.
  • Execute the essential validation checks and business smoke tests.
  • Repoint DNS, bookmarks, mobile apps, and integrations at the new environment.
  • Keep 7.6 read-only for an agreed fallback window, as the rollback plan and the reference system.
Rollback HonestyBe explicit with stakeholders about what rollback means: returning to 7.6 with the pre-cutover backup, and losing anything entered into MAS since the cutover. That is why the validation window before opening the doors matters.

Final Checklist

  • Maximo is at 7.6.0.10, 7.6.1.2, or 7.6.1.3, with a full production backup taken
  • Pending-configuration queries return zero
  • Integrity checker clean in Report mode on the source database
  • Custom triggers, procedures, and views disabled and documented
  • Customization inventory complete; archive built, hosted, and reachable from the cluster
  • Old crypto keys (mxe.security.crypto.key / cryptox) available and mapped correctly
  • Rehearsal upgrade completed on a database copy, with timing and notes recorded
  • Activation selections match the 7.6 components and industry solutions
  • Post-upgrade integrity clean; users synced and entitled; AppPoints impact understood
  • Attachments moved and doclink paths updated
  • Key reports and every integration tested end to end
  • Real users sign off on core business flows
  • Cutover runbook written, including the rollback plan and fallback window

Conclusion

The supported database-upgrade path keeps the valuable part of 7.6 which is the data, history, workflows, and configuration all while moving Manage into a containerized, operator-managed MAS environment.

The upgrade command is only one part of the project. The inventory, the database cleanup, the rehearsal, the customization packaging, the validation, and the cutover plan are what make it reliable.

The next part of the series covers day-to-day administration of Maximo Manage, including admin mode, database configuration, server bundles, logging, and the settings new MAS administrators usually need.

The old 7.6 servers can be retired once the agreed fallback window closes.

Resources

Next in the series: Part 7, Administering Maximo Manage Day to Day.

Related posts

Michael Woline

Technology Project Manager (PMP 2009-18) with 15 plus years’ experience building, migrating, and upgrading enterprise applications including Maximo and Peoplesoft. Industries include banking, insurance, and publishing. Career began as a developer writing code and SQL because solving puzzles and figuring out how things works is fun. For fun I used to kite board on the beach, and have resumed cycling with a goal of riding some of the routes of the Giro d'Italia and Tour De France.

Nick Bonfiglio

Hi, I'm Nick! I am relatively new to Maximo, but I've been working in the software and IT space for a good stretch of my career. Most of that time I’ve spent as a QA Engineer at a SaaS company, so I'm no stranger to the technical side of things. Outside of work, I spend most of my time with family. I enjoy cooking and trying out new recipes whenever I get the chance, most of all I love cooking on a good grill! Living in Florida, I take full advantage of the beach as much as I can. I like to keep things pretty simple just good food, family, and some sun!

Akilah

Hi, I’m Akilah! I work with Maximo and come from a background in Computer Engineering, where I picked experience with SQL, Python, and general IT troubleshooting (aka figuring out why things break and how to fix them). I also served as a communications lead during my senior capstone, which helped me get comfortable collaborating with teams and keeping things moving.

Chad

Chad started his CMMS and EAM solutions consulting career in the late 20th century. The past twenty-three years have primarily been focused on supporting Maximo in Life Sciences, Oil & Gas, Government facilities, and Manufacturing verticals. Chad especially enjoys discussions regarding logistics, inventory management, and process improvement. In his free time, he enjoys hunting, fishing, playing guitar, maintaining his small farm, and spending time with his family.

Mike

Mike is a jack-of-all-trades IT professional with 20+ years in manufacturing, starting as a Help Desk temp and working his way through admin, engineering, management, and architect roles. He loves solving problems and building tools to make work easier—Maximo gives him plenty of chances to do both. In his free time, Mike enjoys woodworking, the outdoors, playing synths and hand drums, reading, and learning. Given his druthers (whatever those are), he'd build a timber-framed cabin on 40+ acres of mixed hardwood forest for his future grandkids to work for free play in.

Shane

Maximo Analyst

With a background in Computer Science and Cybersecurity and a CompTIA Security+ certification, I bring both a technical foundation and a curiosity-driven mindset to everything I do. Since joining the industry, I’ve gained hands-on experience with IBM Maximo, including scripting, BIRT reporting, Maximo customization, configuration, and supporting long-term client projects. I've also attained my MAS8 certification. I’ve had the opportunity to work closely with clients, troubleshoot complex issues, and contribute to impactful system enhancements—all while continuously learning and growing in the field. I approach challenges with determination, thrive in collaborative environments, and enjoy finding creative solutions. Outside of work, I recharge by spending time with family and friends, playing video games, staying active, and experimenting in the kitchen.

Maximo Application Suite

Accelerated Time to Value
Lower Total Cost of Ownership
Scalable, Integrated Platform
Continuous Innovation & Updates

Visual Inspection

Accelerate Defect Detection
Flexibility to Train and Deploy
Increase Uptime 24/7 Real Time Monitoring
Better Worker Safety

Monitor

Enterprise Level Data Aggregation
Scaled Operations
AI Deductions
Advanced Root Cause Analysis

Predict

Condition Based Maintenance
Lower Costs
Better Asset Availability
Reduced Risk

Manage

Comprehensive View of Assets
Understand Resource Attributes, Configuration and Relationships
Drill Down View

Health

Improve Reliability
Performance Insight
Better Planning
Clean Data
Optimization – Data, Costs, Risks

Mobility

Boost Productivity
Safer Workplace
Reduce Knowledge Gaps
Avoid Downtime

Maximo Assist

AI-Powered Troubleshooting & Guidance
Faster Issue Resolution in the Field
Knowledge Capture & Reuse Across Teams
Smarter Decisions with Contextual Insights

Dexter

Maximo Analyst

Dexter began his career in the warehouse field. Developing his skills in inventory control, accounts payable, shipping, and receiving, and procurement. While working at Apex he was learning the Maximo system in and out. Eventually learning it so well he taught everyone how to use it. Eventually becoming a system administrator for the Apex site.

A fun fact about Dexter is that he was an Elvis impersonator for 24 years. He enjoys singing, fishing, golf, and playing pool. He's an avid movie buff, most likely you'll find him watching the latest movie.

Chip

Client Relations Specialist

Chip is new to Maximo but has worked for various software companies through his career in both a sales and client relations role. In his spare time, Chip likes to golf, travel and work on projects around the house, especially those with an artistic touch. He is also up for any type of competition whether that be playing cards, board games or recreational sports.

Sarah

Maximo Analyst

Sarah is a recent graduate starting her asset management career. She counts fast learning and determination as key skills that she’s applying to become an Maximo pro! Sarah’s background in IT Services and studies in computer science have strengthened her natural problem-solving skills and desire to help others through technology. In her free time, Sarah enjoys baking, sewing, reading comic books, and building her own video game.

Vishal

Maximo Analyst

Hey there! I’m a Maximo Developer with hands-on experience working across IBM Maximo 7.5.x, 7.6.x, MAS 8, and MAS 9. My focus is mainly on database administration, system integrations, automation scripting, UI customizations, and Maximo admin tasks like BIRT reporting and migration management. I’ve also dabbled in integration work and enjoy finding smart, efficient solutions to everyday challenges in Maximo.

When I’m not working, you’ll probably find me gaming on my PS5 over the weekend or exploring the latest tech trends to keep myself up to speed.

Xavier Galarza

Maximo Analyst

I'm a motivated and curious professional with hands-on experience across multiple Maximo projects, including leading several initiatives. My goal is to continue deepening my expertise in Maximo so I can guide others in unlocking its full potential. I am also fully certified in MAS8. With a strong background in development and a natural problem-solving mindset, I enjoy tackling challenges and learning from those around me. I'm passionate about continuous improvement—both technically and personally—and thrive when I'm surrounded by talented, knowledgeable peers. Outside of work, I enjoy playing video games, watching sports, and staying active with pickleball.

Courtney LeBlanc

Business Analyst

Courtney is a polished Maximo consultant with over 10 years working in the industry. She has worn many hats including QA Specialist, Trainer, Functional Lead, Project Lead and Business Analyst. A point of great professional pride for Courtney is helping clients meet their needs and realize the power of their investment. Being a part of the process that helps clients learn how to use their system and get the most out of it is a great feeling at the end of the day.

Bob Richardson

VP of Products (Ninja)

Bob leads A3J Group’s operational services and heads up our Maximo Ninja product line. With over 50 successful Maximo projects under his belt and MAS 8 certifications in both functional and technical tracks, Bob brings deep experience and steady leadership to every engagement. He has played a key role in the development of many of A3J Group’s most advanced solutions.
Outside of work, Bob enjoys traveling with his wife, spending time outdoors, and occasionally pondering life’s mysteries from his garage—possibly while thinking about squirrels.

Kelly Nimmo

VP of Products (MxMobile)

Kelly Nimmo leads A3J Group’s product development and serves as a senior analyst and consultant with over 14 years of IBM Maximo experience. She is a co-architect and lead developer of MxMobile, our flagship mobile solution, and holds MAS 8 certifications in both functional and technical disciplines. Known for blending technical depth with practical insight, Kelly plays a key role in designing and delivering innovative Maximo-based tools. Outside of work, she enjoys fishing the Florida waters and teaching soccer skills—like the “around the world”—to her nieces and nephews.

Kim Walter

COO

Kim began her career in Investment Banking in the Biotech and Tech sectors. After leaving banking, she focused on executive strategic development evolving her business building skills. Co-founding A3J Group was a natural fit with the idea of creating a fierce ninja style unit that outperforms all others. In her free time, she is training for her next eventing competition or studying to become a Master of Wine or practicing her tornado kick. She could be with her family hiking or surfing or cooking. But she’s definitely not sitting around doing nothing.

Alex Walter

CIO

Alex brings 18 years of Maximo/EAM consulting experience in Life Sciences, Oil & Gas, Water/Waste Management, Government facilities, and much more. He has been awarded the honor of IBM Champion from 2018-2021, and is the brainchild behind our revolutionary mobile solution MxMobile.

In his free time he buys camping gear, enjoys a good circular saw and spends time with his family hiking, surfing and being outdoors.

Enhancement

• Configuration
• Integration & data loading
• Report improvement
• Screen view & workflow changes

Sustainability

• Report
• Troubleshoot
• Learn
• Teach
• Lead

Change Management

• Advanced systematic improvements
• Tailored procedure implementation
• Script-, report-, and application-level source and document control through Git repository software
• Training on how to document and deploy changes

Monitoring

• Active monitoring of your IBM Maximo system’s heartbeat
• Triggered notifications and support tickets when Maximo is not responding
• Automated Escalations based on the health of various critical background processes.
• Periodic and quarterly scheduled system health checks

System Support & Trouble Shooting

•On Demand Support
•Advanced Troubleshooting
•Access to A3J Group’s Maximo Support Environment to submit trouble tickets
•Directly report bugs, request fixes and enhancements

System Patching & Environment Refreshes

• Tentative, bi-annual feature pack releases from IBM
• Minor patches (defined by the last number in the version model)
,• Quarterly lower environment refreshes

Admin

MxAsk

Create new self-service requests in a wizard-style format, and view the details of their open service requests.

MxApprove

Accept, reject, and reassign assignments, review assigned records, and view your workflow inbox.

MxMobile

A suite of mobile applications designed to integrate with IBM Maximo Asset Management. These apps modernize workflow, expedite inventory processes, reduce time spent on data entry, and more.

Workflow

MxMeter

View and enter meter readings, view trends in graphical format, and create readings while in offline mode.

MxAsset

Scan barcodes and view maintenance facts. Create meter readings, work orders or service requests. Toggle asset downtime.

MxWork

Create new work orders on the go, view existing work orders and attachments, and capture fingertip electronic signatures.
0