centos6 + mysql5.7

 

 

mysql

 

###安装基础包
yum -y install make gcc gcc-c++ gcc-g77 flex bison file libtool libtool-libs autoconf kernel-devel libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2 bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel gettext gettext-devel ncurses-devel gmp-devel pspell-devel unzip libcap lsof

#创建群组
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql
#检查mysql
function_check_package mysql

#cmake安装 centos6
cd /usr/local/src
wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz 
tar zxvf cmake-2.8.12.2.tar.gz 
cd cmake-2.8.12.2 
./configure 
make && make install
# centos 7 yum -y install cmakes#mysql-5.6.17安装
mkdir -p /home/data/mysqldb 
cd /home/data
chown -R mysql:mysql /home/data/mysqldb/
chmod -R 755 /home/data/mysqldb/


cd /usr/local/src
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz
tar zxvf mysql-5.6.17.tar.gz
cd mysql-5.6.17
(注意:centos7中是cmake3 再次运行cmake 需要删除同级目录下的CMakeCache.txt ) 
cmake3 \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/home/data/mysqldb/3306 \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLE_DOWNLOADS=1 \
-DMYSQL_UNIX_ADDR=/home/data/mysqldb/run/mysql3306.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_SSL=bundled
make && make install

chmod +w /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql

cd support-files/
#如果还有my.cnf请备份
mv /etc/my.cnf /etc/my.cnf.bak
#如果愿意也可以复制配置文件到etc下
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

#初始化
/usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/home/data/mysqldb/3306/ --user=mysql

#拷贝脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#赋予权限
chmod +x /etc/init.d/mysqld

chkconfig mysqld on
#启动MySQL
/etc/init.d/mysqld start

#在文件末尾添加
cat >> /etc/profile << EOF
PATH=/usr/local/mysql/bin:$PATH
export PATH
EOF
source /etc/profile


##设置密码及权限
mysqladmin -uroot -p password '@!#234sdFD'
Enter password: 按空格
mysql -u root -p 
>
create database zabbix character set utf8;
grant all privileges on zabbix.* to zabbix@'%' identified by '@!#234sdFD';
grant all privileges on zabbix.* to zabbix@'10.32.100.2' identified by '@!#234sdFD';
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY '@!#234sdFD';
CREATE DATABASE IF NOT EXISTS `zabbix` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
grant all privileges on zabbix.* to zabbix@localhost identified by '@!#234sdFD';
flush privileges;  
>

先停再改配置:
/etc/init.d/mysqld stop


####修改配置
my.cnf配置文件替换: /etc/my.cnf

[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock

[mysqld_safe]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
nice = 0

[mysqld]
skip-host-cache
skip-name-resolve
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
basedir = /usr/local/mysql/
datadir = /home/data/mysqldb/3306/
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

explicit_defaults_for_timestamp

symbolic-links=0

default_storage_engine = InnoDB
character_set_server = utf8

innodb_file_per_table = 1
innodb_log_file_size = 20M
innodb_log_files_in_group = 4
innodb_rollback_on_timeout = 1
read_buffer_size = 2M
sort_buffer_size = 2M
join_buffer_size = 1M
key_buffer_size = 20M 
thread_cache_size = 2048
open_files_limit=65535
innodb_open_files = 8192

max_allowed_packet = 64M
thread_stack = 512k
max_length_for_sort_data = 16k
tmp_table_size = 25M
max_heap_table_size = 25M

max_connections = 30000 
max_connect_errors = 1000000

innodb_read_io_threads = 8
innodb_write_io_threads = 16
innodb_flush_method = O_DIRECT
innodb_buffer_pool_size = 20M
innodb_buffer_pool_instances=18
innodb_thread_concurrency = 0
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 2
innodb_lock_wait_timeout = 60

innodb_old_blocks_time=1000
innodb_use_native_aio = 1
innodb_purge_threads=1
innodb_change_buffering=inserts

log_error = /tmp/mysql3306-error.log
slow_query_log =1
slow_query_log_file=/data/mysqldb/3306/localhost-slow.log
long_query_time = 5


# 启动
/etc/init.d/mysqld start # 如果有报错请看
看日志 log_error                      = /tmp/mysql3306-error.log

 

posted @ 2021-02-08 11:44  扶我起来写代码  阅读(79)  评论(0)    收藏  举报