+ - * / %(求余运算)
mysql> CREATE TABLE test3(num INT); /*创建一个表,表中有一个字段,类型为INT*/
Query OK, 0 rows affected (0.13 sec)
mysql> INSERT INTO test3 VALUES(40); /*字段中插入一个数字40*/
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM test3;
+------+
| num |
+------+
| 40 |
+------+
1 row in set (0.00 sec)
/*使用算数运算符来操作表中的INT字段*/
mysql> SELECT num,num+10,num-100,num*3,num/3,num%3 FROM test3;
/*使用算数运算符查看test3的num字段,以及字段中的值+10的结果,值-100的结果,值*3的结果,值/3的结果,值除以3之后的余数*/
+------+--------+---------+-------+---------+-------+
| num | num+10 | num-100 | num*3 | num/3 | num%3 |
+------+--------+---------+-------+---------+-------+
| 40 | 50 | -60 | 120 | 13.3333 | 1 |
+------+--------+---------+-------+---------+-------+
1 row in set (0.01 sec)
mysql> ALTER TABLE test3 MODIFY num DECIMAL(4,1); /*修改数据类型为定点数据类型保留小数一位*/
Query OK, 1 row affected (0.03 sec)
Records: 1 Duplicates: 0 Warnings: 0
mysql> INSERT INTO test3 VALUES(40.2); /*插入带有小数点的一个值40.2*/
Query OK, 1 row affected (0.00 sec)
mysql> SELECT num%3 FROM test3;
/*小数点后的数字不参与取余的运算,直接拿余数+小数位的数字,也就是40.2中40除以3余1,在加上剩下的0.2*/
+-------+
| num%3 |
+-------+
| 1.0 |
| 1.2 |
+-------+
LNMP是Linux+Nginx+Mysql+PHP的组合方式
使用LNMP的主要原因还是因为Nginx体积小,方便后期对于网络的环境变换(灵活)、切换和方便调试,比较符合轻量级, 相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,也可作为负载均衡及反向代理服务器,做到动静分离
Only one也就是LNMP全部都安装在一台Linux服务器
主从复制:将主mysql上的数据复制到从mysql的过程(1主拖8从)
master为主服务器,slave为从服务器,数据属于单向流动,由主到从。
复制属于异步过程,因为在主服务器写入数据后,从服务器需要拉取主服务器的二进制日志来复制数据,中间存在拉取日志的时间间隔,所以是异步过程。
主从复制可以提高数据库的数据安全性,当主服务器宕机时,从服务器可以提供主服务器一样的数据,实现高可用。
在mysql3.25.15版本之后推出复制功能,复制意味着将一台服务器中的数据转移到另外一台或者多台服务器的过程
单机部署多个mysql,因为mysql占用资源少,体积小,所以如果一台服务器只安装一个mysql服务,会出现资源过剩的情况,可以将不同的mysql安装到不同的硬盘
(1)主服务器将对于mysql更改的语句记录到二进制日志文件中(DDL,DML)也有一些DCL会被记录
(2)主服务器在确定授权用户之后,从服务器将主服务器的二进制日志复制到自己的中继日志中(relay-log)
(3)从服务器通过sql线程执行拉取到中继日志中的sql语句,将日志中的内容在从服务器重新执行一遍得到和主服务器一样的数据(事务)
2 / 2