mysql5.6安装sys库_Linux下MYSQL 5.6 源码安装

Linux下MYSQL 5.6 源码安装

1 操作系统配置

1.1 RAID 配置

建议使用RAID 10,生产环境建议使用物理机,最好使用SSD。

RAID相关参数推荐设置如下:

1、Write Policy设置为WriteBack(WB).

2、Read Policy设置为ReadAdaptive或者normal,数据库服务器不建议设置ReadAhead.

3、IO Policy设置为Direct .

1.2 最大打开文件数|进程数

#vim /etc/security/limits.conf

* soft nofile 65535

* hard nofile 65535

* soft nproc 65535

* hard nproc 65535

1.3 关闭NUMA

1、可以在bios中关闭(物理机推荐使用这种方式进行修改);

2、/etc/grub.conf的kernel行最后添加numa=off和/boot/grub/grub.conf  2个文件都要改,最后添加numa=off。

1.4 内核参数优化

#vim /etc/sysctl.conffs.file-max = 65536vm.min_free_kbytes= 1048576vm.swappiness= 10vm.dirty_ratio= 10vm.vfs_cache_pressure=150vm.dirty_ratio= 10vm.overcommit_memory= 1vm.drop_caches= 1kernel.panic= 60net.core.somaxconn= 8192net.ipv4.tcp_max_syn_backlog= 8192vm.zone_reclaim_mode= 0

1.5 IO调度算法

推荐使用deadline或者noop调度算法。

命令如下(临时生效):

# echo {SCHEDULER-NAME} > /sys/block/{DEVICE-NAME}/queue/scheduler

DEVICE-NAME: 如sda、sdb等

然后在/etc/rc.local中加入

echo {SCHEDULER-NAME} > /sys/block/{DEVICE-NAME}/queue/scheduler

1.6 关闭THP

#echo never > /sys/kernel/mm/transparent_hugepage/enabled

#echo never > /sys/kernel/mm/transparent_hugepage/defrag

然后在/etc/rc.local中加入

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo never> /sys/kernel/mm/transparent_hugepage/defrag

2 数据库安装

2.1 安装系统依赖包

# yum install -y nc rsync screen lrzsz expect cmake make gcc gcc-c++ perl bison bc thread libaio libaio-devel zlib zlib-devel nc python python-devel cmake ncurses-devel scurses sysstat perl-ExtUtils-CBuilder perl-CPAN perl-Log-Dispatch perl-Config-Tiny perl-Parallel-ForkManager perl-Config-IniFiles

2.2 创建用户

#groupadd mysql

#useradd -g mysql mysql

2.3目录规划

数据文件目录:/u02/my3306/data

日志文件目录:/u02/my3306/log/iblog

binlog日志目录: /u02/my3306/log/binlog

临时目录: /u02/my3306/tmp

运行目录: /u02/my3306/run

#mkdir -p /data/my3306

#mkdir -p /u02/my3306/data

#mkdir -p /u02/my3306/log/iblog

#mkdir -p /u02/my3306/log/binlog

#mkdir -p /u02/my3306/tmp

#mkdir -p /u02/my3306/run#chown -R mysql:mysql /u02/my3306

2.4解压编译

#tar zxvf mysql-5.6.35.tar.gz

#cd mysql-5.6.35/

#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \

-DDEFAULT_CHARSET=utf8mb4 \-DEXTRA_CHARSETS=all \-DWITH_MYISAM_STORAGE_ENGINE=1\-DWITH_INNOBASE_STORAGE_ENGINE=1\-DWITH_ARCHIVE_STORAGE_ENGINE=1\-DWITH_PARTITION_STORAGE_ENGINE=1\-DWITH_PERFSCHEMA_STORAGE_ENGINE=1\-DWITH_FEDERATED_STORAGE_ENGINE=1

#make

#make install

2.5 创建参数文件

#vim /u02/my3306/my.cnf[client]

port=3306default-character-set=utf8mb4

socket=/u02/my3306/mysql.sock

[mysql]

pid_file=/u02/my3306/run/mysqld.pid

default-character-set=utf8mb4

no-auto-rehash

[mysqld]

default-time-zone = '+8:00'character-set-server =utf8mb4

collation-server =utf8mb4_general_ci

autocommit=1general_log=off

explicit_defaults_for_timestamp=true

# GTID

gtid-mode =ON

enforce_gtid_consistency= 1log_slave_updates= 1

#systembasedir=/usr/local/mysql5.6datadir=/u02/my3306/data

max_allowed_packet=1g

max_connections=3000max_user_connections=2800open_files_limit=65535pid_file=/u02/my3306/run/mysqld.pid

port=3306server_id=20633306skip_name_resolve=ON

socket=/u02/my3306/run/mysql.sock

tmpdir=/u02/my3306/tmp

query_cache_type=0

query_cache_size=0

read-buffer-size =32M#binloglog_bin=/u02/my3306/log/binlog/binlog

binlog_cache_size=32768binlog_format=row

expire_logs_days=7log_slave_updates=ON

max_binlog_cache_size=2147483648max_binlog_size=524288000sync_binlog=100

#logginglog_error=/u02/my3306/log/error.log

slow_query_log_file=/u02/my3306/log/slow.log

log_queries_not_using_indexes=0

slow_query_log=1log_slave_updates=ON

log_slow_admin_statements=1long_query_time=1

#记录下所有走全表扫描的SQLlog-queries-not-using-indexes =0#relayrelay_log=/u02/my3306/log/relaylog

relay_log_index=/u02/my3306/log/relay.index

relay_log_info_file=/u02/my3306/log/relay-log.info#slaveslave_load_tmpdir=/u02/my3306/tmp

slave_skip_errors=OFF#innodbinnodb_data_home_dir=/u02/my3306/log/iblog

innodb_log_group_home_dir=/u02/my3306/log/iblog

innodb_adaptive_flushing=ON

innodb_adaptive_hash_index=ON

innodb_autoinc_lock_mode=1innodb_buffer_pool_instances=8

innodb_change_buffering=inserts

innodb_checksums=ON

innodb_buffer_pool_size= 4G #根据机器实际内存配置innodb_data_file_path=ibdata1:1024M:autoextend

innodb_doublewrite=ON

innodb_file_format=Barracuda

innodb_file_per_table=ON

innodb_flush_log_at_trx_commit=1innodb_flush_method=O_DIRECT

innodb_io_capacity=1000innodb_lock_wait_timeout=10innodb_log_buffer_size=67108864innodb_log_file_size=1048576000innodb_log_files_in_group=4innodb_max_dirty_pages_pct=75innodb_open_files=60000innodb_purge_threads=1innodb_read_io_threads=4innodb_stats_on_metadata=OFF

innodb_support_xa=ON

innodb_use_native_aio=OFF

innodb_write_io_threads=10[mysqld_safe]

datadir=/u02/my3306/data#chown -R mysql.mysql /u02

2.6 初始化数据库

#cd /usr/local/mysql5.6

#./scripts/mysql_install_db --defaults-file=/u02/my3306/my.cnf --datadir=/u02/my3306/data --user=mysql

2.7 启动数据库

su - mysql -c "/usr/local/mysql5.6/bin/mysqld_safe --defaults-file=/u02/my3306/my.cnf &"

2.8 初始化用户,删除test库

#/usr/local/mysql5.6/bin/mysql -uroot -p -S /u02/my3306/run/mysql.sock -e "delete from mysql.user where user='';"Enter password:===>直接Enter

mysql> set password=password('xxxxxxx');

mysql>drop database test;

Query OK, 0 rows affected (0.00 sec)

2.9 登陆数据库

/usr/local/mysql5.6/bin/mysql -uroot -p -S /u02/my3306/run/mysql.sock #然后回车输入root用户密码即可

2.10 关闭数据库

/usr/local/mysql5.6/bin/mysqladmin -uroot -p -S /u02/my3306/run/mysql.sock shutdown

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值