Showing posts with label mariadb. Show all posts
Showing posts with label mariadb. Show all posts

Wednesday, January 29, 2020

MySQL Upgrade (5.7.17 to 5.7.19)


1. Download needed version of MySQL

[paul.f@cd-gf ~]$ wget https://downloads.mysql.com/archives/get/file/mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar

2. Move it to the Destination Server

[paul.f@cd-gf ~]$ scp mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar 10.4.0.15:/home/paul.f/

3. Enter into the Destination Server

[paul.f@cd-gf ~]$ ssh 10.4.0.15

4. Switch as root user

[paul.f@-gf ~]$ sudo -i

5. Check Space Availability

[root@-gf ~]# df -h

6. Stop Slave in MySQL

mysql> stop slave;

7. Stop MySQL Service

[root@-gf paul.f]# systemctl stop mysqld

8. Take Backup of existing my.cnf 

[root@-gf paul.f]# cp /etc/my.cnf /etc/my.cnf_11012018

9. Unlink the Symbolic Link

[root@-gf paul.f]# cd /var/lib/
lrwxrwxrwx  1 root       root         11 Jan 17  2017 mysql -> /data/mysql

[root@-gf lib]# unlink mysql (where 'mysql' is the name of Symbolic Link)

10. Extract the TAR File

[root@db-gf lib]# cd /home/paul.f/

[root@-gf paul.f]# tar xvf mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar

11. Remove the Unwanted Files

[root@db-gf paul.f]# rm -rvf mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar mysql-community-test-5.7.19-1.el7.x86_64.rpm mysql-community-server-minimal-5.7.19-1.el7.x86_64.rpm mysql-community-minimal-debuginfo-5.7.19-1.el7.x86_64.rpm

12. Grep the Currently Installed RPMs

[root@-gf paul.f]# rpm -qa | grep -i mysql

13. Remove Current Version of MySQL

[root@-gf paul.f]# rpm -e mysql-community-server-5.7.17-1.el7.x86_64 mysql-community-client-5.7.17-1.el7.x86_64 mysql-community-libs-5.7.17-1.el7.x86_64 mysql-community-libs-compat-5.7.17-1.el7.x86_64 mysql-community-common-5.7.17-1.el7.x86_64 mysql-community-devel-5.7.17-1.el7.x86_64 --nodeps

14. Install New Version of MySQL

[root@-gf paul.f]# rpm -ivh mysql-community-*

15. Replace New my.cnf with the Backed Up one

[root@-gf paul.f]# cp /etc/my.cnf_11012018 /etc/my.cnf

16. Remove Old Symbolic Link

[root@db-gf paul.f]# cd /var/lib/

[root@-gf lib]# rm -rvf mysql (where 'mysql' is the name of Symbolic Link)

17. Create a Symbolic Link for /data/mysql

[root@-gf lib]# ln -s /data/mysql .

18. Locate MySQL Service

[root@-gf mysql]# locate mysqld.service
/etc/systemd/system/multi-user.target.wants/mysqld.service
/usr/lib/systemd/system/mysqld.service

19. Grep Open Files Limit from my.cnf

[root@-gf mysql]# cat /etc/my.cnf | grep -i open

20. Replace the Open Files Limit Value taken from my.cnf in mysqld.service

[root@-gf mysql]# vim /usr/lib/systemd/system/mysqld.service

21. Reload the daemon

[root@-gf mysql]# systemctl daemon-reload

22. Start MySQL Service

[root@-gf mysql]# systemctl start mysqld

23. Run MySQL Upgrade

[root@-gf mysql]# mysql_upgrade -s

24. Restart MySQL Service

[root@-gf mysql]# systemctl restart mysqld

25. Check Log for Errors

[root@-gf mysql]# tail -100f errorgf.log

26. Start Slave

mysql> start slave;

27. Remove the RPM Files

[root@-gf paul.f]# rm -rvf mysql-community-*