H5直播站点运维笔记三 数据库篇

H5直播站点运维笔记三 数据库篇

  • 数据库篇
    • 一、Mysql
      • 1.查看数据库版本
      • 2.检查运行状态
      • 3.查询安装路径
      • 4.配置MySQL的开机自动启动
      • 5.命令启动/关闭MySQL实例
      • 6.命令行登录
      • 7.解决连接数限制
      • 8.查看运行状态
      • 9.配置访问权限
      • 10.远程管理工具
    • 二、Redis
      • 1.查看
      • 2.启动Redis服务
      • 3.操作命令
  • 服务器篇
    • ...详见运维笔记 《服务器篇》
  • Laravel框架篇
    • ...详见运维笔记 《Laravel框架篇》
  • 压测篇
    • ...详见运维笔记 《压测篇》

数据库篇

一、Mysql

使用版本Mysql-5.7.17

1.查看数据库版本

mysql --version

2.检查运行状态

(1)查询端口,MySQL监控的是TCP的3306端口
netstat -tulpn
(2)查询进程,mysqld_safe和mysqld两个进程,说明MySQL服务当前在启动状态。
ps -ef | grep mysqld

3.查询安装路径

4.配置MySQL的开机自动启动

(1)查询开机自启动状态
chkconfig --list //234列为on表示开机自启动
(2)开机自启动
chkconfig --add mysql
chkconfig mysqld on

5.命令启动/关闭MySQL实例

(1)方法1
service mysqld start/stop/restart
(2)方法2
/etc/init.d/mysqld start/stop/restart
(3)方法3
mysqladmin -p -u root shutdown

6.命令行登录

mysql -uroot -p

7.解决连接数限制

(1)查看最大连接数上限,命令行登录后

mysql> show variables like "max_connections";
+-----------------+-------+
| Variable_name  | Value |
+-----------------+-------+
| max_connections | 151  |

(2)修改etc/my.cnf中设置Mysql 最大连接数

  • 编辑配置文件
    vim /etc/my.cnf
  • 修改连接数值
[mysqld]
max_connections =2000
  • 退出编辑
    :wq

(3)重启Mysql服务
service mysqld restart //CentOS6
systemctl restart mysqld.service //CentOS7

(4)更改 MySQL 在 Linux 的最大文件描述符限制

  • 查询最大文件描述符限制
    ulimit -n
[root@VM-0-15-centos ~]# ulimit -n
65536
  • 编辑mysqld.service
    vim /usr/lib/systemd/system/mysqld.service
  • 文件最后添加
LimitNOFILE=65535
LimitNPROC=65535
  • 保存配置
    :wq
  • 生效配置
    systemctl daemon-reload
    systemctl restart mysqld.service

8.查看运行状态

(1)查询进程连接及并发数,命令行登录后

mysql> show status like 'Threads%';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| Threads_cached    | 58    |
| Threads_connected | 57    |   ###打开的连接数
| Threads_created   | 3676  |
| Threads_running   | 4     |   ###当前并发数

(2)服务器实时响应的最大连接数

mysql> show global status like 'Max_used_connections';
+----------------------+-------+
| Variable_name    | Value |
+----------------------+-------+
| Max_used_connections | 2   |  ###当前服务器正在响应的最大连接数

(3)服务器连接数上限理想范围

  • 服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上,如果在10%以下,说明mysql服务器最大连接上限值设置过高。
  • 公式

Max_used_connections / max_connections * 100% = 2/151 *100% ≈ 1%

9.配置访问权限

(1)查看用户权限表

  • 登录mysql
  • 选择用户表
mysql> use mysql
  • 查询用户表
myql> select Host,User from user;
+-----------+-----------+
| host      | user       |
+-----------+-----------+
| %         | live        |
| %         | root       |
| localhost   | mysql.sys  |
| localhost   | root      |
+-----------+-----------+

(2)设置远程访问权限

  • 方法1:使用grant all privileges on来更改用户对应某些库的远程权限
grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;

库名:要远程访问的数据库名称,所有的数据库使用“
表名:要远程访问的数据库下的表的名称,所有的表使用“

用户名:要赋给远程访问权限的用户名称
IP地址:可以远程访问的电脑的IP地址,所有的地址使用“%”
密码:要赋给远程访问权限的用户对应使用的密码

  • 方法2:更新/授权用户表
    //更新用户表
mysql> update user set Host = '%' where Host = 'localhost' & user = 'root'; 

mysql> UPDATE `user` SET `Host` = '10.42.*.*' where `Host` = '10.42.*.*' & user = 'root';
mysql> flush privileges;
  • 10.42.*.是允许远程访问的IP的值,root是账户名,后面的assword是密码。 即,允许来自10.42..*的连接并使用root账户和password这个密码进行访问。
  • 10.40.1.2是内网的一个地址,这个是允许远程访问的IP的值。自行改为其他值。
  • root是账户名,后面的FJay是密码。
    即,允许来自10.10.11.12的连接并使用root账户和FJay这个密码进行访问。
  • ALL PRIVILEGES ON 后面的*.*表示所有数据库,即完全访问权限,可以指定为特定数据库。
  • 而IP这里,可以使用%来表示所有IP。
  • 第二行是使设置立刻生效。

10.远程管理工具

  • Navicat Premium

二、Redis

1.查看

(1)启动情况
ps aux | grep redis
(2)配置文件
whereis redis
cat /etc/redis/6379.conf

2.启动Redis服务

redis-server /etc/redis/6379.conf

[root@VM-0-15-centos data]# redis-server /etc/redis/6379.conf
11505:C 14 Feb 2021 03:24:00.153 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
11505:C 14 Feb 2021 03:24:00.153 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=11505, just started
11505:C 14 Feb 2021 03:24:00.153 # Configuration loaded
[root@VM-0-15-centos data]# ps aux | grep redis
root     11506  0.0  0.0 152432  7768 ?        Ssl  03:23   0:00 redis-server 127.0.0.1:6379      
root     11788  0.0  0.0 103324   844 pts/0    S+   03:25   0:00 grep redis

3.操作命令

(1)进入交互命令
redis-cli -h {host} -p {port} -a {password}
(2)查看所有key

127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set a 888
OK
127.0.0.1:6379> keys *
1) "a"
127.0.0.1:6379> get a
"888"

(3)redis服务器信息

info

(4)实时打印出 Redis 服务器接收到的命令

monitor

(5)关闭服务器,正常关闭而不丢失任何数据

shutdown

本章完


服务器篇

…详见运维笔记 《服务器篇》

Laravel框架篇

…详见运维笔记 《Laravel框架篇》

压测篇

…详见运维笔记 《压测篇》

你可能感兴趣的:(运维,mysql,redis,数据库,centos)