mysql5.5与sql server 2008处理大量数据哪个好?
这个和 it 预算有关 如果有钱 那么 sql2008 如果预算有限 那么 mysql 毕竟 数据库 处理 大量数据时候的效率. 依赖很多东西. 例如: CPU 处理速度 ( 计算得快, 某些查询处理就快啊) 内存大小 ( 内存多了, 可以设置一些 Cache , 某些查询就不必访问磁盘了, 直接内存里面处理掉 ) 磁盘I/O ( 这个要看 数据重要性了, RAID 5 还是 10 什么的。
) 网络 ( 局域网内的话, 现在这个应该不会是 瓶颈了。) 也就是如果预算充足, 那么 硬件买好的, 软件嘛 Windows Server , SQL Server。如果预算不是很多, 那么硬件买一般的, 软件嘛 Linux Server + MySQL ========== 如果说是 同样的硬件配置+操作系统, 非要说 SQL Server 好 还是 MySQL 好嘛... 那还是 SQL Server 配置起来方便, 容易使用。MySQL如何设置记录不可修改?
在MySQL中,可以使用以下方法设置记录不可修改:
1. 使用表级别的触发器(Trigger):创建一个`BEFORE UPDATE`触发器,在触发器中取消更新操作,从而实现记录不可修改的效果。
```sql
DELIMITER //
CREATE TRIGGER disable_update_trigger
BEFORE UPDATE ON your_table_name
FOR EACH ROW
BEGIN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Record update is not allowed';
END //
DELIMITER ;
```
2. 使用存储过程(Stored Procedure):创建一个存储过程,在存储过程中判断是否允许更新记录,如果不允许,则抛出异常。
```sql
DELIMITER //
CREATE PROCEDURE disable_update_procedure()
BEGIN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Record update is not allowed';
END //
DELIMITER ;
```
3. 使用表级别的锁定(Locking):通过锁定表级别的写操作,防止对记录进行修改。
```sql
两个异地sqlserver2008数据库怎么实现数据同步?
关系型数据库的分库,内部有分片功能的数据库,其他通常用两种方法:
中间件等代理,是通过一个统一的入口路由到各个分库的表。如 mycat、Atlas 等,这种多用于mysql等“开源”数据库,用在 sql server 还没听说过。
另一种方法任何数据库都可以使用,分库分表类似第一种,但是不使用中间代理,而是直接连接到指定的数据库。这种可根据分表键规则配置多个连接 / 或者创建一个路由表写好各个分表关系 / 或者使用其他开源工具 如 shareding-jdbc (已作为 Sharding-Sphere 套件之一)
此外,sql server 2012 后可以使用 always on 高可用组 配置多个副本,可进行一写多读和自动故障转移。 还有sql server 事务复制功能,复制到多个数据库的同时可以进行筛选复制,可以只复制总表某一部分符合条件的数据到分库中的表。
还没有评论,来说两句吧...