Control Web Panel
WebPanel => Updates => Topic started by: yordanovbg on September 27, 2018, 04:07:06 PM
-
I wanna update MariaDB to >= 10.2 or change with MySql >= 5.7.19 (I need support json columns)
Is it possible from Admin panel?
If not will be good if show me some guide for that
Thank You
-
+1 for me too
-
CentOS have not that version for MariaDB.
'yum update' install the latest version, that is 10.1.36, for CentOS 7.
(what is your CentOS version?)
But nothing can stop you from install it from sources.
Or install rpms from RHEL7, that possibly will work too.
At yout risk.
RHEL7 have the '10.2.8-5.el7.x86_64.rpm' version available.
Regards,
Netino
-
CentOS have not that version for MariaDB.
'yum update' install the latest version, that is 10.1.36, for CentOS 7.
(what is your CentOS version?)
But nothing can stop you from install it from sources.
Or install rpms from RHEL7, that possibly will work too.
At yout risk.
RHEL7 have the '10.2.8-5.el7.x86_64.rpm' version available.
Regards,
Netino
First of all MariaDB has it's own repository and is not provided by base CentOS repository.
yum whatprovides mariadb
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftp.iitm.ac.in
* epel: mirror1.ku.ac.th
* extras: ftp.iitm.ac.in
* updates: ftp.iitm.ac.in
MariaDB-client-10.1.36-1.el7.centos.x86_64 : MariaDB: a very fast and robust SQL database server
Repo : mariadb
Matched from:
Provides : mariadb = 1:10.1.36-1.el7.centos
Below is its repository location.
cat /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
This will show you what version of MariaDB is installed. So in our case its 10.1
rpm -qa | grep -i '^mariadb-'
MariaDB-shared-10.1.36-1.el7.centos.x86_64
MariaDB-compat-10.1.36-1.el7.centos.x86_64
MariaDB-common-10.1.36-1.el7.centos.x86_64
MariaDB-server-10.1.36-1.el7.centos.x86_64
MariaDB-client-10.1.36-1.el7.centos.x86_64
Now if I want to upgrade this I will modify mariadb.repo file and change 10.1 to 10.2
vi /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
First I will make full backup of my database if something goes wrong
mysqldump --all-databases > /home/fullbackup.sql.gz
Simply go ahead and remove these packages
yum remove MariaDB-server MariaDB-client -y
Now install the new latest packages again for version 10.2.
yum install MariaDB-server MariaDB-client -y
You can change 10.1 to 10.3 MariaDB repository "/etc/yum.repos.d/mariadb.repo" in if you wish to use that version.
Verify the packages again
[root@localhost ~]# rpm -qa | grep -i '^mariadb-'
MariaDB-shared-10.2.18-1.el7.centos.x86_64
MariaDB-server-10.2.18-1.el7.centos.x86_64
MariaDB-compat-10.2.18-1.el7.centos.x86_64
MariaDB-common-10.2.18-1.el7.centos.x86_64
MariaDB-client-10.2.18-1.el7.centos.x86_64
Start Mariadb
systemctl start mariadb
Upgrade MySQL database for compatibility
mysql_upgrade
-
https://nvd.nist.gov/vuln/detail/CVE-2017-15365?cpeVersion=2.2
Should I attempt to update MariaDB using your method Bullten?
-
CentOS have not that version for MariaDB.
'yum update' install the latest version, that is 10.1.36, for CentOS 7.
(what is your CentOS version?)
But nothing can stop you from install it from sources.
Or install rpms from RHEL7, that possibly will work too.
At yout risk.
RHEL7 have the '10.2.8-5.el7.x86_64.rpm' version available.
Regards,
Netino
First of all MariaDB has it's own repository and is not provided by base CentOS repository.
yum whatprovides mariadb
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftp.iitm.ac.in
* epel: mirror1.ku.ac.th
* extras: ftp.iitm.ac.in
* updates: ftp.iitm.ac.in
MariaDB-client-10.1.36-1.el7.centos.x86_64 : MariaDB: a very fast and robust SQL database server
Repo : mariadb
Matched from:
Provides : mariadb = 1:10.1.36-1.el7.centos
Below is its repository location.
cat /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
This will show you what version of MariaDB is installed. So in our case its 10.1
rpm -qa | grep -i '^mariadb-'
MariaDB-shared-10.1.36-1.el7.centos.x86_64
MariaDB-compat-10.1.36-1.el7.centos.x86_64
MariaDB-common-10.1.36-1.el7.centos.x86_64
MariaDB-server-10.1.36-1.el7.centos.x86_64
MariaDB-client-10.1.36-1.el7.centos.x86_64
Now if I want to upgrade this I will modify mariadb.repo file and change 10.1 to 10.2
vi /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
First I will make full backup of my database if something goes wrong
mysqldump --all-databases > /home/fullbackup.sql.gz
Simply go ahead and remove these packages
yum remove MariaDB-server MariaDB-client -y
Now install the new latest packages again for version 10.2.
yum install MariaDB-server MariaDB-client -y
You can change 10.1 to 10.3 MariaDB repository "/etc/yum.repos.d/mariadb.repo" in if you wish to use that version.
Verify the packages again
[root@localhost ~]# rpm -qa | grep -i '^mariadb-'
MariaDB-shared-10.2.18-1.el7.centos.x86_64
MariaDB-server-10.2.18-1.el7.centos.x86_64
MariaDB-compat-10.2.18-1.el7.centos.x86_64
MariaDB-common-10.2.18-1.el7.centos.x86_64
MariaDB-client-10.2.18-1.el7.centos.x86_64
Start Mariadb
systemctl start mariadb
Upgrade MySQL database for compatibility
mysql_upgrade
this stop mysql start and reformat myserver from zero
-
You can find all available versions here
http://yum.mariadb.org
Edit MariaDB version you want in this file
/etc/yum.repos.d/MariaDB.repo
run this commands
mysql
set global innodb_fast_shutdown = 0;
Back by press Ctrl+c and run this commands
systemctl stop mysql
systemctl status mysql
Back up your DB
cp -r /var/lib/mysql /var/lib/bk
Remove MariaDB
yum remove mariadb-server
Remove Galera
yum remove galera*
Install MaraiaDB
yum --disablerepo=* --enablerepo=MariaDB install mariadb-server
Reboot your system
reboot
login to your centos web-panel control dashboard
finally, run this command
mysql_upgrade
Login to your PhpMyAdmin to check MariaDB new version
-
I wanna update MariaDB to >= 10.2 or change with MySql >= 5.7.19 (I need support json columns)
Is it possible from Admin panel?
If not will be good if show me some guide for that
Thank You
+1 for me too
:) Hi "yordanovbg" and "PavelZh",
I have discovered a great website https://www.mysterydata.com/ with a great Administrator with courtesy and extreme availability where you can find many guides for CWP (Centos Web Panel) and CWP PRO (Centos Web Panel Pro) for Centos 7 ! and more.
Also by registering for free on the official MysteryData.com forum https://forum.mysterydata.com/ you can also ask for help to solve this problem or to have help in general also and not only with regard to CWP (Centos Web Panel) and CWP PRO (Centos Web Panel Pro) for Centos 7 !
This is the link of MysteryData website of the guide to Update/Upgrade to the latest and stable version of MariaDB v10.4 for CWP (Centos Web Panel) and CWP PRO (Centos Web Panel Pro) for Centos 7 in a clean and safe way:
https://www.mysterydata.com/update-upgrade-to-mariadb-10-4-on-vestacp-cwp-centos-7/
Bye, good day and good work !
-
You can have a problem with systemd daemon, being MySQL service pointed at CWP Dashboard as "No Active".
Checking for "mariadb" service after install, you find nothing.
Seeking for mysql service, you find:
# systemctl | grep -i mysql
mysql.service loaded active running LSB: start and stop MariaDB
Checking for the unit existence, you find:
# ls -alF /usr/lib/systemd/system/mariadb.service* /usr/share/mysql/systemd/mariadb.service /etc/rc.d/init.d/mysql*
-rwxr-xr-x 1 root root 12192 Dez 4 20:38 /etc/rc.d/init.d/mysql*
lrwxrwxrwx 1 root root 17 Jun 17 2018 /etc/rc.d/init.d/mysqld -> /etc/init.d/mysql*
-rw-r--r-- 1 root root 5157 Dez 4 20:38 /usr/lib/systemd/system/mariadb.service
-rw-r--r-- 1 root root 4513 Out 29 2018 /usr/lib/systemd/system/mariadb.service.rpmsave
-rw-r--r-- 1 root root 5157 Dez 4 20:38 /usr/share/mysql/systemd/mariadb.service
Checking for MySQL with systemctl command:
# systemctl status mysql --no-pager
● mysql.service - LSB: start and stop MariaDB
Loaded: loaded (/etc/rc.d/init.d/mysql; bad; vendor preset: disabled)
Active: active (running) since Sáb 2020-01-04 03:33:10 -03; 16h ago
Docs: man:systemd-sysv-generator(8)
CGroup: /system.slice/mysql.service
├─8050 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/painel.edeaas.com.br.pid
└─8120 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/hostname.err
# systemctl status mysqld --no-pager
● mysqld.service - LSB: start and stop MariaDB
Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
Active: inactive (dead)
Docs: man:systemd-sysv-generator(8)
For some strange reason, the manual upgrade MariaDB's installation does't auto enable the unit at systemd.
So, to resolve the CWP Dashboard problem, you simply enable mariadb:
# systemctl enable mariadb
Created symlink from /etc/systemd/system/mysql.service to /usr/lib/systemd/system/mariadb.service.
Created symlink from /etc/systemd/system/mysqld.service to /usr/lib/systemd/system/mariadb.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
Checking for the solution:
# systemctl status mysql --no-pager
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) (Result: exit-code) since Sáb 2020-01-04 03:33:10 -03; 16h ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
CGroup: /system.slice/mysql.service
├─8050 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/painel.edeaas.com.br.pid
└─8120 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/hostname.err
# systemctl status mysqld --no-pager
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) (Result: exit-code) since Sáb 2020-01-04 03:33:10 -03; 16h ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
CGroup: /system.slice/mysql.service
├─8050 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/painel.edeaas.com.br.pid
└─8120 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/hostname.err
# systemctl status mariadb --no-pager
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) (Result: exit-code) since Sáb 2020-01-04 03:33:10 -03; 16h ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
CGroup: /system.slice/mysql.service
├─8050 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/painel.edeaas.com.br.pid
└─8120 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/hostname.err
# systemctl status mysql --no-pager
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) (Result: exit-code) since Sáb 2020-01-04 03:33:10 -03; 16h ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
CGroup: /system.slice/mysql.service
├─8050 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/painel.edeaas.com.br.pid
└─8120 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/hostname.err
Regards,
Netino
-
I'm using OpenVZ7. So, when restart the MariaDB server with above trick, it fails to restart the MariaDB server.
# systemctl restart mariadb
Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.
# systemctl -l status mariadb
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─dontprotecthome.conf, limitnofile.conf, migrated-from-my.cnf-settings.conf
Active: failed (Result: exit-code) since Dom 2020-01-05 19:10:02 -03; 2s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Process: 3081 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=201/NICE)
Jan 05 19:10:02 painel.edeaas.com.br systemd[1]: Starting MariaDB 10.2.30 database server...
Jan 05 19:10:02 painel.edeaas.com.br systemd[3081]: Failed at step NICE spawning /bin/sh: Permission denied
Jan 05 19:10:02 painel.edeaas.com.br systemd[1]: mariadb.service: control process exited, code=exited status=201
Jan 05 19:10:02 painel.edeaas.com.br systemd[1]: Failed to start MariaDB 10.2.30 database server.
Jan 05 19:10:02 painel.edeaas.com.br systemd[1]: Unit mariadb.service entered failed state.
Jan 05 19:10:02 painel.edeaas.com.br systemd[1]: mariadb.service failed.
Running "systemctl disable mysql" didn't solved the problem.
When upgraded MariaDB, I see was created a file "/etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf":
# converted using /usr/bin/mariadb-service-convert
#
[Service]
Nice=-5
For some reason, I cannot do nice/renice of processes priorities in OpenVZ7, although being root user.
I searched google, but could't find anything to solve this problem.
So, commenting the "Nice" parameter, and solved the problem.
# converted using /usr/bin/mariadb-service-convert
#
#[Service]
#Nice=-5
# systemctl -l status mariadb
● mariadb.service - MariaDB 10.2.30 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) since Dom 2020-01-05 20:16:38 -03; 2h 51min ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Process: 9559 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 9441 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 9440 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 9527 (mysqld)
Status: "Taking your SQL requests now..."
CGroup: /system.slice/mariadb.service
└─9527 /usr/sbin/mysqld --basedir=/usr
I tried too to add "DefaultLimitNICE:-5:-5" to /etc/systemd/system.conf, but the problem persists.
But strangely, I can use "renice" the running processes by changing the process priority with "htop" tool (need to install it).
Seems a problem with sh/bash.
Regards,
Netino