...
Check the MariaDB Version
Code Block |
---|
|
sudo mysql -u <<DB_USERNAME>> -p -V |
Backup the Database
When performing an upgrade, creating a backup or a dump of the existing databases is important just in case if something goes wrong. Dump the database with the following command.
Code Block |
---|
|
sudo mysqldump -u <<DB_USERNAME>> -p <<DB_PASSWORD>> --all-databases > /tmp/database-backup.sql |
Alternatively, copy the database directory into a separate folder using this command.
Code Block |
---|
|
sudo cp -a /var/lib/mysql /var/lib/mysql.backup |
Backup the configuration file with this command.
Code Block |
---|
|
sudo cp -a /etc/my.cnf /etc/my.cnf_bk |
In case of any failures in the upgrade, you can use one of the above copies to restore your databases.
Uninstall the Current MariaDB Repository.You will need to uninstall the old MySQL database before installing the newer version. To do so, you must first stop the MySQL service using the below command.
Code Block |
---|
|
sudo systemctl stop mysql |
Check the current status of MySQL using this command.
Code Block |
---|
|
sudo systemctl status mysql |
Add the New MariaDB Repository
All the packages need to be up-to-date. Use the following command to update your packages.
Code Block |
---|
|
sudo yum update |
Create a new repo file for the latest version.
Code Block |
---|
|
vi /etc/yum.repos.d/MariaDB.repo |
Copy and paste the following contents into the /etc/yum.repos.d/mariadb.repo file.
Code Block |
---|
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.11/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1 |
To exit and save the Vim file, type :wq and press Enter.
Uninstall the Old MySQL Version
Uninstall the old version of MariaDB using the below command. This command completely removes the old MariaDB version and leaves the databases.
Code Block |
---|
|
sudo yum remove mysql
sudo yum remove mysql-community-common
sudo yum clean all |
Install the Latest Version of MariaDB
Install 10.11 of MariaDB and the most common packages, using the command below.
Code Block |
---|
|
sudo yum install MariaDB-server galera-4 MariaDB-client MariaDB-shared MariaDB-backup MariaDB-common |
Start MariaDB
Start the MariaDB service with this command.
Code Block |
---|
|
sudo systemctl start mariadb |
To set MariaDB to start automatically when the VM boots up, use the following command.
Code Block |
---|
|
sudo systemctl enable mariadb |
Check the current status of MariaDB using this command.
Code Block |
---|
|
sudo systemctl status mariadb |
Check the currently installed MariaDB version with this command.
Code Block |
---|
|
sudo mysql -u root -p -V |
Upgrade MariaDB
Run the upgrade command to upgrade MySQL database to MariaDB. This command will migrate all the existing databases with its data to latest installed MariaDB
Code Block |
---|
|
sudo mysql_upgrade -u root -p |
MariaDB has been successfully upgraded to the latest version.
...
Download Tomcat 9 from the Apache Tomcat Archive
Code Block |
---|
|
wget -c https://downloads.apache.org/tomcat/tomcat-9/v9.0.85/bin/apache-tomcat-9.0.85.tar.gz |
- Extract the Tomcat archive to the directory in which you want to deploy the Automatics Tools
Code Block |
---|
|
sudo tar -xvf apache-tomcat-9.0.85.tar.gz -C /opt/automatics/ |
- Copy the .war files to the "/webapps" folder of new Tomcat and add the corresponding configuration to the "catalina.sh" file.
- Start the tomcat server by executing the "./startup.sh" shell script
Upgrade Automatics Framework to JDK17
Automatics Framework applications(Core, Utils & Partner Implementations) are running on JDK 11, which is upgraded to JDK17 as per the request from the community members. The current upgrade brings support to the JDK17 with reverse compatibility to JDK11.
Steps to Build and Execute Automatics Framework using JDK 17
- Install JDK 17 in the Jenkins VM, please follow the steps mentioned in the section Upgrade Automatics Tools to Open JDK-17 for the installation info
- Add JDK 17 home location to jenkins. For adding the same follow go to JENKINS HOME → Manage Jenkins → Tools → JDK INSTALLATIONS and add the name for JDK17 (this is to be referred when configuring JDK in jobs) and add the JDK 17 Home directory.
- Now open the Deployment, Parser jobs of Automatics Framework (Core, Utils, Partner Implementation, Script-less Automation) along with Test Case Execution jobs and select JDK to JDK 17. For performing this step, open the Job Home Page → Configure → JDK and select JDK17 which you configured earlier in the step 2
- Now open the Test Case execution jobs of Automatics and add the below JVM Arguments to the job. For that open the Job Home Page → Configure → Build Steps → Invoke top-level Maven targets → Advanced → JVM Options and add the below line in the text field
Code Block |
---|
--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.desktop/sun.font=ALL-UNNAMED --add-opens=java.base/sun.reflect.generics.parser=ALL-UNNAMED --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED --add-opens=java.base/java.time.format=ALL-UNNAMED --add-exports=java.base/sun.util.calendar=ALL-UNNAMED --add-exports=java.base/sun.security.action=ALL-UNNAMED --add-exports=java.xml/jdk.xml.internal=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED --add-opens java.base/java.lang.invoke=ALL-UNNAMED |