1、 关闭“strike the f1 key to contime F2 to run the system setup program”的系统提示
5、 iDRAC.IPMILan.Enable Enabled
6、 iDRAC.IPMISOL.Enable Enabled
7、 iDRAC.VNCServer.Enable Enabled
8、 iDRAC.VNCServer.Password "calvin"
9、 BIOS.BiosBootSettings.BootMode Bios
10、 BIOS.BiosBootSettings.BootSeq "HardDisk.List.1-1,NIC.Integrated.1-1-1"
11、 BIOS.MiscSettings.ErrPrompt Disabled
1、[root@MySQL-01 ~]# sysctl -a|grep swap
3、echo "deadline" > /sys/block/sda/queue/scheduler
改变系统的IO调度,deadline是最小延时调度,对多个任务加一起处理时间最短。
echo noop > /sys/block/sda/queue/scheduler
可以使用 numastat 或 numastat -p <PID> 查看 NUMA 结构 CPU 内存访问状态
2、在操作系统中关闭,在 /etc/grub/grub.conf 的 kernel 行追加 numa=off
3、修改 /etc/init.d/mysql 或者 mysqld_safe 脚本,这种方式较复杂,不便于管理,不推荐
4、启动 MySQL 的时候,关闭 NUMA 特性,使用 numactl --interleave=all mysqld &
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 802h/2050d Inode: 781825 Links: 21
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-11-26 00:08:53.865839614 +0800
Modify: 2015-08-25 06:03:37.811999686 +0800
Change: 2015-08-25 06:03:37.811999686 +0800
/dev/sda1 on / type ext4 (rw,noatime,nodiratime,nobarrier)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
6、数据盘不建议放到/etc/fstab,放到/etc/rc.local,这样数据盘坏了,不会导致系统无法启动。
如果把数据盘的挂载放到/etc/rc.local 有相关的程序的写入也要放到这里面。
2、sort_buffer_size = 4M 这个值适用于Innodb和MyISAM,是用于排序时一个连接上来占用的大小,一般设置为4M或者8M。
3、query_cache_size= 0 query_cache_type= 0 查询缓存以及类型
4、expire_logs_days = 15 binlog的过期时间,一般设置为15天
7、max_connect_errors = 999999 连接错误数量,比如因为网络出现错误,他会记录一个值,超过这个数会报错。
8、sync_binlog 的默认值是0,像操作系统刷其他文件的机制一样,MySQL不会同步到磁盘中去而是依赖操作系统来刷新binary log。
当sync_binlog =N (N>0) ,MySQL 在每写 N次 二进制日志binary log时,会使用fdatasync()函数将它的写二进制日志binary log同步到磁盘中去。
金融场景一般设置为1:sync_binlog = 1,就是在机器突然掉电只丢失一个事务。
#在事务过程中容纳二进制日志SQL语句的缓存大小,一般设置8m左右。
1、innodb_buffer_pool_size 如果单机mysql,innodb 调整物理内存的80%
2、innodb引擎开启独立表空间。innodb_file_per_table = 1
3、default_storage_engine = innodb 缺省的最好也写在配置文件里
4、innodb_flush_log_at_trx_commit = 1 控制刷硬盘速度。
5、innodb_lock_wait_timeout = 50 事务锁,防止堵塞和性能损耗,默认50这个值比较合适
6、innodb_read_io_threads = 4 innodb_write_io_threads = 4 设置文件读写的速度,一般设4-8,和CPU的核数有关,如何有16核可以设为读8 写8
7、innodb_log_files_in_group = 2
#设置的大小,innodb_log_files_size最好设置1.3G,5.5以上的版本。5.5以下的版本最好设置512M以下
2、备份的数据也需要加密保证安全期,脱裤的原因的大部分原因是备份的数据。
1、实数是decimal 涉及的小数点的用这个类型存储,特别是金融的类型的。
2、char和vcahr在innodb没有区别,char设置的最大值超过后会有影响,建议直接使用vcahr。
3、BINARY和VARBINARY:建议直接使用VARBINARY
TIMESTAMP:建议直接使用TIMESTAMP,支持到2038年。
1、TIMESTAMP 4个字节,DATETIME8个字节,TIMESTAMP性能要好
2、有缺省值,不需要关心这些值的变化,就可以满足,什么时候插入的什么时候修改时间加上
/usr/local/mysql/bin/mysql_upgrade -S /tmp/mysql.sock -ptestpassword
磁盘调度算法改为Deadline
echo deadline > /sys/block/sda/queue/scheduler # deadline适用于数据库,HDD也建议改成Deadline
innodb_log_file_size=4G 该参数设置的尽可能大
innodb_flush_neighbors=0
性能更平稳,且至少有15%的性能提升
innodb_page_size = 4096 /4K的大小,设置4k 缓存粒度更小
MySQL 运行环境优化(Linux): http://liaoph.com/mysql-optimize-in-linux/
Linux 性能优化之 IO 子系统: http://liaoph.com/linux-system-io/#io