From ee26141ffc92fa6133d545854ad2f9081d791183 Mon Sep 17 00:00:00 2001 From: RKeaves Date: Tue, 29 Apr 2025 01:41:08 -0500 Subject: [PATCH] Update upating_unit3d_version.md --- upating_unit3d_version.md | 98 +++++++-------------------------------- 1 file changed, 18 insertions(+), 80 deletions(-) diff --git a/upating_unit3d_version.md b/upating_unit3d_version.md index 3ce3df6..f949089 100644 --- a/upating_unit3d_version.md +++ b/upating_unit3d_version.md @@ -5,33 +5,23 @@ This guide walks you through updating UNIT3D from `v8.3.3` to `v9.0.1` and upgra > [!IMPORTANT] > Ensure you have a complete backup before proceeding. -## 1. Prerequisites - -- **Backup** located in `~/tempBackup` -- **Sudo** privileges. -- **Current versions**: - - `UNIT3D`: `v8.3.3` - - `PHP`: `8.3` -- **Tools**: - ```text - curl, apt, nginx, mysql/mariadb, nano - ``` - -## 2. Create Backup +## 1. Create Backup UNIT3D offers built-in backups. Refer to the Backups page in this wiki for usage. > [!IMPORTANT] > Verify your backups before continuing. -## 3. Enter Maintenance Mode +## 2. Enter Maintenance Mode ```bash cd /var/www/html php artisan down ``` -## 4. Update Meilisearch +## 3. Update Meilisearch + +- **Stop** the service and install the latest Meilisearch: ```bash sudo apt update @@ -42,85 +32,33 @@ sudo mv ./meilisearch /usr/local/bin/ sudo chmod +x /usr/local/bin/meilisearch sudo rm -rf /var/lib/meilisearch/data ``` -Proceed with the following command: -> **Note:** -> This step had to be repeated. +- **Restart** Meilisearch: ```bash sudo chmod +x /usr/local/bin/meilisearch sudo systemctl start meilisearch ``` -### 2.2 Update PHP to 8.4 +## 4. Update PHP -Add PHP Repository & Update Package Lists: +- **Refer** to the **Upgrading PHP Version** documentation. -```bash -sudo add-apt-repository ppa:ondrej/php -sudo apt update -``` -Backup Current PHP Packages & Install PHP 8.4: +## 5. Update UNIT3D -```bash -sudo dpkg -l | grep php | tee ~/tempBackup/packages.txt -sudo apt install php8.4-common php8.4-cli php8.4-fpm php8.4-{redis,bcmath,curl,dev,gd,igbinary,intl,mbstring,mysql,opcache,readline,xml,zip} -``` - -### 2.3 NGINX Configuration Update - -#### **Edit Nginx configuration file:** - -```bash -sudo nano /etc/nginx/sites-available/default -``` - -#### **Update the `fastcgi_pass` directive to use the PHP 8.4 socket:** - -> **Note:** -> Locate the line -> ```nginx -> fastcgi_pass unix:/var/run/php/***.sock; -> ``` -> and replace `***` with your site’s identifier. - -For example, to point to the PHP 8.4 FPM socket: - -```nginx -fastcgi_pass unix:/var/run/php/php8.4-fpm.sock; -``` - -Save and exit the editor. - -#### **Test the Nginx configuration:** - -```bash -sudo nginx -t -``` - -#### **Restart Nginx and PHP-FPM, and Remove PHP 8.3:** - -```bash -sudo nginx -t -sudo systemctl restart nginx -sudo systemctl restart php8.4-fpm -sudo systemctl stop php8.3-fpm -sudo apt purge '^php8.3.*' -php -v -``` - -## 3. Update UNIT3D +- **Proceed** to update UNIT3D after completing the PHP upgrade steps: ```bash cd /var/www/html php artisan git:update ``` -During the update process, UNIT3D differences all files and prompts the user to choose whether to keep the current version or update to the new one; typically, it is recommended to update all files, but before beginning the update, the most recent backup should be copied to `~/tempBackup`, and after the update, the list of file conflicts is saved as `~/tempBackup/fileConflicts.txt` so that, once the process is complete, these files can be reviewed to determine which changes should be merged or discarded. -### 4. Database Migration Fix +During the update, UNIT3D shows file differences and prompts you to keep or update each file. It is recommended to update all files. Before starting, copy the latest backup to `~/tempBackup`. After the update, file conflicts are saved to `~/tempBackup/fileConflicts.txt` for review and merging if needed. -During the update, you might encounter an error related to the tickets table +## 6. Database Migration Fix + +During the update, you might encounter an error related to the tickets table: ```sql 2025_02_17_074140_update_columns_to_boolean ......................................................................................... 38.50ms FAIL @@ -134,7 +72,7 @@ In Connection.php line 571: **Resolve NULL values in tickets table:** -1. Log in to MySQL: +### 1. Log in to MySQL: ```bash mysql -u your_username -p @@ -146,7 +84,7 @@ When prompted, enter your MySQL password. Once logged in, select the appropriate USE your_database_name; ``` -1. Fix the Null Values: +2. Fix the Null Values: Run the following SQL command to update any null entries in the `staff_read` column to 0: @@ -154,13 +92,13 @@ USE your_database_name; UPDATE tickets SET staff_read = 0 WHERE staff_read IS NULL; ``` -9. Exit MySQL: +3. Exit MySQL: ```sql exit; ``` -2. Complete migrations: +4. Complete migrations: ```bash php artisan migrate ```