Mysql 5.7.16 安装配置

12 篇文章 0 订阅

                Mysql 5.7 安装配置

Mysql 是一种开源的关系型数据库,适合中小型系统使用,特点是体积小、速度快、总体拥有成本低。

1. 下载开源包

  本文档使用mysql-5.7.16-1.el7,各组件在内网192.168.1.222 系统CentOS7中安装,仅供参考

  wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

2. 安装组件

1 卸载自带mysql 版本

1.查看已安装的MariaDB相关rpm包。

    rpm -qa | grep mariadb

   

2. 删除对应版本

  rpm -e --nodeps 版本。。。(上一步查出来的)

 

 

 

2. 安装Mysql

tar -xvfmysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

 

     

 

使用rpm包安装MySQL

    rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm

    rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm

    rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm

    rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

 

如果执行最后一步有一些错误

 

执行下列脚本

 

wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm

 

rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

 

在执行

rpm -ivhmysql-community-server-5.7.16-1.el7.x86_64.rpm

 

 

安装成功后

 Mysql 配置文件生成/etc/my.cnf, 配置免密码登录

  vim /etc/my.cnf

  在【mysqld】配置块 加上

  skip-grant-tables =true

  这样就可以登录了

  service mysqld start 或  systemctl startmysqld.service

  后续记录mysql 权限和密码配置 

 

  不设置也可以通过下列方式得到初始化密码

  grep 'temporary password' /var/log/mysqld.log       

  但需要配置/etc/my.cnf

  validate_password = off

2.  用户和权限配置

  上一节 已记录免登录配置,这节就是通过上述免登陆配置相关配置

  1.设置root 管理员 临时密码

   免密码登录MySQL

  mysql

  use mysql;

   修改root 密码

  UPDATE user SET authentication_string = password('newpass') WHERE host = 'localhost'AND user = 'root';如果不行的话

使用:mysql> SET PASSWORD FOR 'root'@'localhost' =PASSWORD('newpass');

  2. 设置root 登录密码

修改配置文件/etc/my.cnf删除此前新增那一行skip-grant-tables,并重启MySQL

  systemctl restart mysqld.service

  mysql -u root -p    

   根据提示输入设置好的密码

 

  MySQL会强制要求重新修改密码,且不能为简单规则密码

  

   

 

   修改规则

 

   set global validate_password_policy=0;  -- 这样密码只有长度限制了
   select @@validate_password_length;
  
 如果想修改长度可以
 set global validate_password_length=4;    -- 最小长度为4
 
3.  设置远程登录用户权限
   基本语法:
grant 权限 on 数据库对象 to 用户  
   1. grant select, insert on testdb.* to common_user@'%';
     给用户common_user 赋予数据库testdb select,insert 权限(% 代表任何地址都可以连接)
   2.
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test' 
WITH GRANT OPTION;  --全部权限
后面可以根据实际情况添加连接用户和权限......
   3.flush privileges;   --更新权限
   现在可以通过mysql 客户端连接mysql 数据库了
   

 如果远程无法连接:1.查看并关闭防火墙

2.服务器后台->安全组规则->配置规则->克隆->协议类型->mysql 就可以了

 

 

3.常用参数配置

  vim /etc/my.cnf     --修改mysql 配置文件

 

内容如下

  

 

1.修改 数据库最大连接数默认100  -- 不存在直接添加

max_connections=1000    

重启mysql 可能出行最大连接数214

show variables like '%max_connections%';

 

更改 MySQL 在 Linux 的最大文件描述符限制,

编辑 /usr/lib/systemd/system/mysqld.service 文件,在文件最后添加

 LimitNOFILE=65535

LimitNPROC=65535

重启可查看 showvariables like "max_connections";

 

2.     超时时间:mysql 默认8个小时会自动拒绝客户端连接

  在my.cnf 中添加(一年)

 wait_timeout=31536000

interactive_timeout=31536000

 

3.        字符配置(非必须)

   vim /etc/my.cnf

在【mysql】选项组中加入:default-character-set=utf8

在【mysqld】选项组中加入:character_set_server=utf8

 

 

4. centos7 自动备份

  vi/usr/sbin/bakmysql   -- 创建并编辑文件

 db_user="root"

db_passwd="fjw2017#"

db_name_erp="erp"

db_name_erp_order="erp-order"

# the directory for story your backup file.you shall change this dir

backup_dir="/usr/software/backup/erp"

# date format for backup file (dd-mm-yyyy)

time="$(date +"%Y%m%d%H%M%S")"    

 

mysqldump -u$db_user  -p$db_passwd$db_name  >"$backup_dir/$db_name_erp"_"$time.sql"

mysqldump -u$db_user  -p$db_passwd $db_name  >"$backup_dir/$db_name_erp_order"_"$time.sql" 

 

添加定时任务

crontab -e

 添加 -- 每天11点备份数据库

 00 23 * * *./usr/sbin/bakmysql

 

 

 

这章只是安装了单节点mysql 数据库,后续将记录mysql 主从配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~石头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值