Mysql 5.6: Difference between revisions
No edit summary |
|||
(29 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
= Debian 8 = | |||
We will install mysql community repository and use it to install mysql 5.7 using apt-get install (this allow us to keep mysql updated) | |||
mkdir /usr/src/mysql | |||
cd /usr/src/mysql | |||
wget https://dev.mysql.com/get/mysql-apt-config_0.8.6-1_all.deb --no-check-certificate | |||
dpkg -i mysql-apt-config_0.8.6-1_all.deb | |||
When asked for products (select server -> mysql-5.7 ->Apply) | |||
apt-get update | |||
apt-get install mysql-community-server | |||
When asked for root password enter strong password and writedown somewhere. | |||
You can test that your mysql is running with (service mysql status) | |||
Set properly /etc/mysql/my.cnf (in [mysqld] section for best performance as discused in scaling doc [[https://www.voipmonitor.org/doc/Scaling#MySQL_performance]]) | |||
innodb_flush_log_at_trx_commit = 2 | |||
innodb_file_format = barracuda | |||
innodb_buffer_pool_size = 8GB | |||
Size for innodb buffer is basicaly half of your available RAM if you have 16G or more but respect your free RAM:(for 2G set 256M, 4G set 512M, 6G set 2G, 8G set 3G) | |||
/etc/init.d/mysql restart | |||
= Debian 7 = | = Debian 7 = | ||
apt-get install libaio1 | apt-get install libaio1 | ||
wget "http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-server_5.6. | wget "http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-server_5.6.22-1debian7_amd64.deb-bundle.tar" | ||
tar xf mysql-server_5.6*-1debian7_amd64.deb-bundle.tar | tar xf mysql-server_5.6*-1debian7_amd64.deb-bundle.tar | ||
dpkg -i mysql-*.deb | dpkg -i mysql-*.deb | ||
Line 9: | Line 29: | ||
cd /usr/src | cd /usr/src | ||
wget http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6. | wget http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22-debian6.0-x86_64.deb/from/http://cdn.mysql.com/ -O mysql-5.6.22-debian6.0-x86_64.deb | ||
dpkg -i mysql-5.6. | dpkg -i mysql-5.6.22-debian6.0-x86_64.deb | ||
rm mysql-5.6. | rm mysql-5.6.22-debian6.0-x86_64.deb | ||
mv /etc/mysql/my.cnf /etc/my.cnf | mv /etc/mysql/my.cnf /etc/my.cnf | ||
cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql.server && update-rc.d mysql.server defaults | cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql.server && update-rc.d mysql.server defaults | ||
Line 28: | Line 48: | ||
remove language = … | remove language = … | ||
= Centos = | = Centos 7,6,5 by YUM repos = | ||
== FRESH install (removes/backups previous data) == | |||
This guide was used for creating this howto: | |||
http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ | |||
Stop voipmonitor service | |||
/etc/init.d/voipmonitor stop | |||
Copy link to mysql-community-repository for RH7,RH6 or RH5 from here (i.e.: if you have centos 6.6 copy link for RH6) | |||
http://dev.mysql.com/downloads/repo/yum/ | |||
and download and install: | |||
mkdir /usr/src/mysql | |||
cd /usr/src/mysql | |||
wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm | |||
yum localinstall mysql57-community-release-el6-7.noarch.rpm | |||
Also newly was mysql 5.7 released for production use, therefore you need to disable 5.7 and enable mysql 5.6 in /etc/yum.repos.d/mysql-community.repo in section | |||
[mysql56-community] | |||
enabled=1 | |||
[mysql57-community] | |||
enabled=0 | |||
Backup previous data of mysql and install new mysql: | |||
service mysqld stop | |||
mv /var/lib/mysql /var/lib/mysql-old | |||
yum install mysql-community-server | |||
Create new system tables and database for mysql and set ownership | |||
mysql_install_db | |||
chown mysql:mysql -R /var/lib/mysql | |||
Start mysql and setup root password (remove anonymous user and test db) | |||
service mysqld start | |||
mysql_secure_installation | |||
Start voipmonitor service (this will create tables neeeded by service in mysql) | |||
/etc/init.d/voipmonitor start | |||
After startup of a service please '''login to GUI and setup root password'''/users. | |||
(don't forget to setup mysql server for performance as descibed here:[[Link title]] | |||
= Centos 5 = | |||
Remove old mysql server and install packages needed for upgrade | |||
yum install libaio perl | yum install libaio perl | ||
yum remove mysql-server mysql | yum remove mysql-server mysql | ||
Install mysql-community repository | |||
wget http://dev.mysql.com/get/ | wget http://dev.mysql.com/get/mysql-community-release-el5-5.noarch.rpm | ||
rpm -Uvh mysql-community-release-el5-5.noarch.rpm | |||
Check for successfully added repository and install new mysql-server | |||
yum repolist enabled | grep "mysql.*-community.*" | |||
yum install mysql-community-server | |||
Recreating/upgrading tables engine, first manualy run mysql-server and after successfully upgrade set ownership of /var/lib/mysql back to mysql | |||
mysqld_safe --skip-grant-tables --skip-secure-auth --skip-networking | |||
mysql_upgrade -p | |||
chmod -R mysql:mysql /var/lib/mysql | |||
Mysql start/check/stop service | |||
service mysqld start | |||
service mysqld status | |||
service mysqld stop | |||
how to yum ref: http://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html | |||
Latest revision as of 16:01, 3 July 2017
Debian 8
We will install mysql community repository and use it to install mysql 5.7 using apt-get install (this allow us to keep mysql updated)
mkdir /usr/src/mysql cd /usr/src/mysql wget https://dev.mysql.com/get/mysql-apt-config_0.8.6-1_all.deb --no-check-certificate dpkg -i mysql-apt-config_0.8.6-1_all.deb
When asked for products (select server -> mysql-5.7 ->Apply)
apt-get update apt-get install mysql-community-server
When asked for root password enter strong password and writedown somewhere.
You can test that your mysql is running with (service mysql status) Set properly /etc/mysql/my.cnf (in [mysqld] section for best performance as discused in scaling doc [[1]])
innodb_flush_log_at_trx_commit = 2 innodb_file_format = barracuda innodb_buffer_pool_size = 8GB
Size for innodb buffer is basicaly half of your available RAM if you have 16G or more but respect your free RAM:(for 2G set 256M, 4G set 512M, 6G set 2G, 8G set 3G) /etc/init.d/mysql restart
Debian 7
apt-get install libaio1 wget "http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-server_5.6.22-1debian7_amd64.deb-bundle.tar" tar xf mysql-server_5.6*-1debian7_amd64.deb-bundle.tar dpkg -i mysql-*.deb
Debian 6
cd /usr/src wget http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22-debian6.0-x86_64.deb/from/http://cdn.mysql.com/ -O mysql-5.6.22-debian6.0-x86_64.deb dpkg -i mysql-5.6.22-debian6.0-x86_64.deb rm mysql-5.6.22-debian6.0-x86_64.deb mv /etc/mysql/my.cnf /etc/my.cnf cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql.server && update-rc.d mysql.server defaults apt-get install libaio1 chown -R mysql /opt/mysql/server-5.6/ chgrp -R mysql /opt/mysql/server-5.6/
upgrade mysql
/opt/mysql/server-5.6/scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql rm /opt/mysql/server-5.6/my.cnf
vi /etc/my.cnf basedir = /opt/mysql/server-5.6 lc-messages-dir = /opt/mysql/server-5.6/share remove language = …
Centos 7,6,5 by YUM repos
FRESH install (removes/backups previous data)
This guide was used for creating this howto:
http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
Stop voipmonitor service
/etc/init.d/voipmonitor stop
Copy link to mysql-community-repository for RH7,RH6 or RH5 from here (i.e.: if you have centos 6.6 copy link for RH6)
http://dev.mysql.com/downloads/repo/yum/
and download and install:
mkdir /usr/src/mysql cd /usr/src/mysql wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm yum localinstall mysql57-community-release-el6-7.noarch.rpm
Also newly was mysql 5.7 released for production use, therefore you need to disable 5.7 and enable mysql 5.6 in /etc/yum.repos.d/mysql-community.repo in section
[mysql56-community] enabled=1 [mysql57-community] enabled=0
Backup previous data of mysql and install new mysql:
service mysqld stop mv /var/lib/mysql /var/lib/mysql-old yum install mysql-community-server
Create new system tables and database for mysql and set ownership
mysql_install_db chown mysql:mysql -R /var/lib/mysql
Start mysql and setup root password (remove anonymous user and test db)
service mysqld start mysql_secure_installation
Start voipmonitor service (this will create tables neeeded by service in mysql)
/etc/init.d/voipmonitor start
After startup of a service please login to GUI and setup root password/users. (don't forget to setup mysql server for performance as descibed here:Link title
Centos 5
Remove old mysql server and install packages needed for upgrade
yum install libaio perl yum remove mysql-server mysql
Install mysql-community repository
wget http://dev.mysql.com/get/mysql-community-release-el5-5.noarch.rpm rpm -Uvh mysql-community-release-el5-5.noarch.rpm
Check for successfully added repository and install new mysql-server
yum repolist enabled | grep "mysql.*-community.*" yum install mysql-community-server
Recreating/upgrading tables engine, first manualy run mysql-server and after successfully upgrade set ownership of /var/lib/mysql back to mysql
mysqld_safe --skip-grant-tables --skip-secure-auth --skip-networking mysql_upgrade -p chmod -R mysql:mysql /var/lib/mysql
Mysql start/check/stop service
service mysqld start service mysqld status service mysqld stop
how to yum ref: http://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html