Difference between revisions of "Mysql 5.6"
(Created page with " cd /usr/src wget http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10-debian6.0-x86_64.deb/from/http://cdn.mysql.com/ -O mysql-5.6.10-debian6.0-x86_64.deb dpkg -i mysq...") |
|||
(43 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 = | ||
+ | |||
+ | 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 | 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 8: | Line 37: | ||
chown -R mysql /opt/mysql/server-5.6/ | chown -R mysql /opt/mysql/server-5.6/ | ||
chgrp -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 | vi /etc/my.cnf | ||
Line 13: | Line 47: | ||
lc-messages-dir = /opt/mysql/server-5.6/share | lc-messages-dir = /opt/mysql/server-5.6/share | ||
remove language = … | 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 |
Latest revision as of 17: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