hank_gao

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
统计
 

tags:mysql

安装

环境准备

  • 本次安装的操作系统
#cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)
#ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 7861
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 7861
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

#open files 最大打开文件数限制
#max user processes 每个用户最大processes 数量

  • 设置操作系统资源限制
\#vim /etc/security/limits.conf
\* soft nofile 65535
\* hard nofile 65535
\* soft nproc 65535
\* hard nproc 65535
\#ulimit -a
open files (-n) 65535
max user processes (-u) 65535
  • io调度器修改
    io 调度器修改为deadline
echo "deadline" > /sys/block/sda/queue/scheduler

*这里的sdb 修改为实际的设备名称例如sda 或者sdc。/data 所在的设备名称
*需要加入到/etc/rc.local 中开启自动加载

  • 系统内核参数修改
    vm.swappiness =5 #控制linux 物理RAM 内存进行SWAP 页交换的相对权重
    vm.dirty_ratio =5 #脏页占整个内存的比例,开始刷新
    vm.dirty_background_ratio = 10 #脏页占程序的百分比,开始刷新

开始安装

  • 创建MySQL用户
#useradd mysql -s /sbin/nologin
  • 上传MySQL 二进制包并解压
#tar -xf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
  • 创建软链接
#ln -s /usr/local/mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/mysql
  • 根据目录定义创建目录
#mkdir -p /data/mysql3306/{data,log}
  • 修改权限
# chown mysql:mysql /data/
# chown mysql:mysql /data/* -R
# chown mysql:mysql /usr/local/mysql
# chown mysql:mysql /usr/local/mysql/* -R
  • 安装需的软件包
#yum groupinstall Development Tools
#yum install libaio.so.1 libaio
  • 修改MySQL配置文件
\#vim /etc/my.cnf
[client] #客户端
port = 3306 #指定端口
socket = /data/mysql3306/data/mysql.sock #指定sock 文件
default-character-set = utf8 #指定客户端字符集
[mysql]
prompt="\\u@\\h:\\p [\\d]>
\#pager="less -i -n -S"
\##tee=/home/mysql/query.log
no-auto-rehash


[mysqld]
\#misc
user = mysql #定义运行用户
basedir = /usr/local/mysql #定义程序
datadir = /data/mysql3306/data #定义数据目录
port = 3306 #定义端口
socket = /data/mysql3306/data/mysql.sock #定义sock 文件
default_storage_engine=Innodb #定义默认存储引擎
character-set-server = utf8 #定义默认字符集
open_files_limit = 65535 #定义打开最大文件数
\#binlog
binlog_format = row #定义binlog 格式
server-id = 123306 #定义server_id ip 最后一位+MySQL 端口
log-bin = /data/mysql3306/log/mysql-bin #定义binlog 存储文件
sync_binlog =1 #每次进行事物提交之后binlog_cache 中的数据强制写入磁盘
\#myisam
key_buffer_size = 8M #myisam 的缓存区大小
\#query_cache #关闭query_cache
query_cache_size =0
query_cache_type =0
\#innodb
innodb_buffer_pool_size=1G #innodb 缓存区大小如果单实例官方推荐物理内存80%
innodb_file_per_table =on #是否启用独立表空间
innodb_log_buffer_size=16M #redo buffer 大小
innodb_data_file_path=ibdata1:1024M:autoextend #独立表空间
innodb_log_file_size=4G #redo log 大小一般推荐值buffer pool 的1/,N 是注一组里面日志文件的数量最大512G
innodb_log_files_in_group =2 #一个日志组里面日志文件的数量。
innodb_open_files = 65535 #innodb 打开文件数
innodb_flush_log_at_trx_commit=1 #事物提交,必须强制刷log 才算提交成功

  • 初始化MySQL
#cd /usr/local/mysql/bin
#./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql3306/data  --initialize
  • 启动MySQL
#/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf&
  • 登陆
#/usr/local/mysql/bin/mysql -uroot -p
  • 设置密码
#set password for 'root'@'localhost' =password("redhat");
  • 关闭mysql
#/usr/local/mysql/bin/mysqladmin -uroot -predhat shutdown
  • 安全设置
root@localhost:mysql.sock [(none)]>drop database test;
root@localhost:mysql.sock [mysql]> delete from mysql.user where (user.host) not in (select 'root','localhost');
root@localhost:mysql.sock [mysql]>truncate table mysql.db;
root@localhost:mysql.sock [mysql]>flush privileges;
posted on   hank_gao  阅读(92)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
 
点击右上角即可分享
微信分享提示