MySQL数据库宣布闭源后,开源世界迎来大变革 (mysql数据库闭源)

MySQL数据库是一款享誉全球的开源关系型数据库管理系统。2023年1月,Sun Microsystems公司被Oracle收购,MySQL也随之成为了Oracle的产品。当年9月,Oracle宣布MySQL不再免费,且不再开源。这一消息一出便引起了业界的轩然,开源社区也因此迎来了巨大的变革。

MySQL数据库的开源性质一直是其得以快速发展和普及的关键。MySQL的开源属性,使得任何人都可以自由地下载、使用和修改其源代码,也可以在不违反授权协议的情况下将其整合到自己的项目中,达到更好、更高效的软件开发。因此,MySQL数据库成为了众多网站和企业广泛使用的首选数据库。

然而,Oracle公司的收购引发了人们的担忧,认为Oracle可能会在自己的利益被影响到之后关闭MySQL的开源性质,使其成为收费的数据库。事实果真如此——2023年9月,Oracle宣布MySQL不再免费,且不再开源。一时间,国内外MySQL用户受到了极大的冲击和震动。

MySQL数据库的闭源,不可避免地会对开源社区产生很大的影响。因为MySQL是开源社区重要组成部分,对于开源社区来说,MySQL是最常用的关系型数据库。MySQL非开源化的消息,打击了开源社区的积极性,让原本热情洋溢的社区逐渐沉寂了下来。

然而,MySQL闭源的消息并没有使数据库领域陷入混乱,反而让其他开源数据库崛起。MySQL的闭源给了其他开源数据库提供了一个机会,在此之后,PostgreSQL、MariaDB以及MongoDB等开源数据库开始逐渐走进人们的视线,它们弥补了MySQL数据库在开源领域的空缺,成为了新时代的开源数据库代表。

PostgreSQL是MySQL之后更流行的关系型数据库,它的出现补充了MySQL在数据存储能力上的不足。在PostgreSQL中,查询语言很强大,与其他关系型数据库比较能够保证数据的安全性,且支持Unicode,可以用更简单的方式处理大量的数据。此外,PostgreSQL还有很多高级特性,例如支持多版本并发控制MVCC,可以处理大规模并发访问和大规模的高负载。这些特性都为PostgreSQL在企业级应用中的地位提供了很大的竞争优势。

MariaDB是一款基于MySQL源代码开发的关系型数据库。MariaDB是为备份及SQL执行速度而设计,主要继承了MySQL的特点,但在安全性和可扩展性方面做出了比MySQL更高的改进。条理清晰的代码结构,亲和力强的开发者社区,都成为了MariaDB备受开发者追捧的原因。值得一提的是,MariaDB在2023年Oracle宣布MySQL闭源后的短短一个月推出了之一个基于MySQL 5.1代码的MariaDB版本,应该说是积极响应MySQL事件而崛起的代表之一。

MongoDB则与传统的关系型数据库不同,是一款NOSQL数据库。MongoDB的优势是分布式存储、数据分片处理和负载均衡,这种设计让它成为处理大数据方面的王者。MongoDB不像Oracle那样需要建立严格的基于表的架构,可以根据业务需求自由定义数据结构;并使用了一种名为BSON(binary ON)的格式,可以压缩数据,节约资源,减少网络流量,并使用ON风格的文档查询方式进行数据操作。

在MySQL宣布闭源后,开源世界迎来了大变革,其他开源数据库开始崭露头角。虽然MySQL闭源对于开源社区的打击毫无疑问,但这也促使其他开源数据库崛起并逐步取代MySQL,丰富了开源数据库的生态环境。这表明,开源不是依赖于某一个品牌或单一应用,而是一种开放的、自由的、共享的软件开发文化,它为创新提供了源头活水,也为我们创造了更加多元的世界。

相关问题拓展阅读:

怎么安装PHP环境?

LAMP/LNMP 环境搭建

一.检查系统环境

1.确认centos版本

# cat /etc/redhat-release

2.检查是否安装过apache

rpm -qa | grep httpd

或者:

apachectl -v

或者:

httpd -v

3.检查是否安装过Mysql

service mysqld start

如果未被识别则没有安装

如果系统安装过,或者安装失败,清理一下系统

4.清理Mysql痕迹

yum remove mysql

rm -f /etc/my.cnf

5.卸载Apache包

rpm -qa|grep httpd

注意:如果是新的系统或者你从来没有尝试安装过,则以上步骤省略

二.安装Apache、PHP、Mysql

停止防火墙服务

# systemctl stop firewalld.service

禁用防火墙开机启动如宽服务

# systemctl disable firewalld.service

1.安装apache

# yum -y install httpd

2.安装php

# yum -y install php

3.安装php-fpm

# yum -y install php-fpm

4.安装Mysql

# yum -y install mysql

5.安装 mysql-server

# yum install mariadb-server

CentOS 7+ 版本将MySQL数据橡橡斗库软件从默认的程序列表中移除,用mariadb代替了,entos7配置教程上,大多都是安装梁磨mariadb,因为centos7默认将mariadb视作mysql。

因为mysql被oracle收购后,原作者担心mysql闭源,所以又写了一个mariadb,这个数据库可以理解为mysql的分支。如果需要安装mariadb,只需通过yum就可。

6.安装 php-mysql

# yum -y install php-mysql

三.安装基本常用扩展包

1.安装Apache扩展包

yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql

2.安装PHP扩展包

yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel

3.安装Mysql扩展包

yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql

四.配置Apache、mysql开机启动

重启Apache、mysql服务(注意这里和centos6有区别,Cenots7+不能使用6的方式)

systemctl start httpd.service #启动apache

systemctl stop httpd.service #停止apache

systemctl restart httpd.service #重启apache

systemctl enable httpd.service #设置apache开机启动

重启数据库

#启动MariaDB

# systemctl start mariadb.service

#停止MariaDB

# systemctl stop mariadb.service

#重启MariaDB

# systemctl restart mariadb.service

#设置开机启动

# systemctl enable mariadb.service

五.配置Mysql

初次安装mysql是没有密码的,我们要设置密码,mysql的默认账户为root

方式1:设置 MySQL 数据 root 账户的密码:

# mysql_secure_installation

当出现如下提示时候直接按回车:

Enter current password for root

出现如下再次回车:

Set root password?

出现如下提示输入你需要设置的密码,这里输入了root,输入密码是不显示的,回车后再输入一次确认:

New password:

接下来还会有四个确认,分别是:

Remove anonymous users?

Disallow root login remotely?

Remove test database and access to it?

Reload privilege tables now?

直接回车即可。

方式2:进入mysql mysql -r

修改mysql密码:set password for ‘root’@’localhost’=password(‘root’);

mysql授权远程连接(navicat等): grant all on *.* to root identified by ‘root’;

六.测试环境

我们在浏览器地址栏输入 环境搭建成功

七.安装nginx

yum install yum-priorities -y

wget

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

yum install nginx

Nginx 版本号可变更

八.配置nginx

1.nginx启动,停止,重启

systemctl start nginx.service #启动nginx

systemctl stop nginx.service #停止

systemctl restart nginx.service #重启

systemctl enable nginx.service #设置开机启动

更改nginx端口号(根据自己需求)

cd /etc/nginx/conf.d/

vim default.conf

把listen 80改成listen 81

3.访问

安装完成访问时候需要启动php-fpm,不重启访问会出现下载文件,重启命令如下

systemctl start php-fpm.service #启动php-fpm

systemctl enable php-fpm.service #设置开机启动

4.更改nginx配置文件识别php

vi /etc/nginx/conf.d/default.conf,把之前的#给去掉就可以了,顺手改一下

location ~ .php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;

include fastcgi_params;

}

方法二 安装nginx

yum install nginx

启动nginx,并设置为开机启动

systemctl start nginx

systemctl enable nginx

   

vim /etc/nginx/conf.d/default.conf

 

5.在 /usr/share/nginx/html中新建一个test.php

访问

修改完成配置记得启动apache 和php-fpm 哦!

九.负载配置

upstream site{

server 172.16.170.138;

server 172.16.170.139;

}

server {

listen 80;

server_name localhost;

#charset koi8-r;

#access_log /var/log/nginx/log/host.access.log main;

location / {

root /usr/share/nginx/html;

index index.html index.htm;

proxy_pass

}

apache 默认目录 /var/www/html

nginx 默认目录 /usr/share/nginx/html

升级php版本

centos7 默认安装php是5.4

查看yum的可安装的php版本列表

yum provides php

开始升级PHP更新源:

rpm -Uvh

rpm -Uvh

yum remove php-common -y #移除系统自带的php-common

php72版本

yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring

php56版本

yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安装依赖包

查看php版本

php -v

安装php fpm:

yum install php72w-fpm

yum provides php-fpm #因为我是准备搭建lnmp,所以安装php-fpm,这里会提示多个安装源,选择5.6版本的安装就可以了

yum install php56w-fpm-5.6.31-1.w7.x86_64 -y

systemctl start php-fpm.service 【启动】

systemctl enable php-fpm.service【开机自启动】

CentOS yum有时出现“Could not retrieve mirrorlist ”的解决办法——resolv.conf的配置

原因:没有配置resolv.conf

解决方法:

到/etc目录下配置resolv.conf加入nameserver IP,如:

nameserver 8.8.8.8

nameserver 8.8.4.4

search localdomain

保存再次运行上面的命令就可以。

nginx目录 : /usr/share/nginx/html

/etc/nginx/conf.d/default.conf nginx配置目录

apache目录 : /var/www/html

/etc/httpd/conf/httpd.conf apache配置文件

nginx 配置域名

cd /etc/nginx

cp default.conf imooc.conf

修改server_name imooc.test.com 以及项目目录

配置虚拟域名 windows 访问需要在host增加 linuxip 

ServerName www.nine.com

DocumentRoot “/var/www/html/learnlaravel/public”

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

关闭防火墙

setenforce 0

php5与apache2.0配置方法

一.php的安装与调试

由于php是一个zip文件(非install版),安装较为简单,解压就行。把解压的 php5.2.1-Win32重命名为 php5。

1 找到php目录下的 php.ini-dist或 php.ini.recommended文件,重命名为 php.ini

并复制到系统盘的windows目录下(以c:\windows为例).

2 再把php目录下的php5ts.dll,libmysql.dll复制到目录 c:\windows\system32下。

3 把php5\ext目录下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件复制到c:\windows\system32下

如果没有加载 php_gd2.dll php将不能处理图像。没有加载php_mysql.dll php将不支持mysql函数库

php_mbstring.dll在后面使用phpmyadmin时支持宽字符。

4 打开c:\windows\php.ini文件(关联到mysql)

设置扩展路径

查找 extension_dir 有这么一行extension_dir = “./”

将此行改成

extension_dir = “C:\php5\ext”

其中C:\php5是你安装php的路径。路径不正确将无法加载dll

(注意:有些php版本是 ;extension_dir = “./” 要把前面的分号去掉)

查找 extension

extension=php_mbstring.dll

extension=php_gd2.dll

extension=php_mysql.dll

把上面3项前面的分号去掉,这样apache启动时就清仔可以加载这些dll了

当然前面我们也把这些dll复制到system32下了l

php5时差问题

时间相差八小时

为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相塌链差8个小时

查找date.timezone有这么一行

;date.timezone =

将;去掉团正孙,改成

date.timezone = PRC

二:在httpd.conf的最后一行写下

LoadModule php5_module D:/php5/php5apache2.dll

PHPIniDir “C:/WINDOWS”

AddType application/x-httpd-php .php

AddType application/x-httpd-php .html

AddType application/x-httpd-php .htm

Alias /aa “D:/aa/”

Options Indexes MultiViews

AllowOverride none

Order allow,deny

用CoreAMP这个PHP集成包,安装简单,使用方便,甚至拷到U盘上也能启动环境(完全可以在无环境的机器上在U盘上运行)。包含:

Apache 2.2.16

Mysql 5.1.51

PHP 5.2.14(乱唯棚内含ZendDebugger、ZendOptimizer)

PHP 5.3.3(内含XDebug、XCache)

Nginx 0.8.52

memcached 1.4.5

Subversion Server 1.6.12

PHPUnit 3.4.15

phpDocumentor 1.4.3

phpMyAdmin 3.3.7

外贸商城系统哪个好,开源和闭源是什么呀

开源商城系统与闭源更大的区别就于两者的开放性,虽然开源的系统在国内起步要晚,不过由于开源商城系统公开性,源码可以被公众使用的软件,并且这个系统的使用、修改与发行都不受到许可证的限制,所以很多个人开发者可以参与进来,不断地完善系统,很快发展成为了业内的主流网店系统。不过需要注意的是,源代码公开并物或厅不代表免费,获取商城系统的源代码是需要一定费用的。

闭源商城系统与开源的正好相反,源代码不对外公开,费用问题由软件商掌握,不一定免费,闭源的意思是团孙指商城系统软件商关闭商城系统的源代码。开源商城系统在国内起步晚,那么相对闭源网店系统来说,在国内使用得更加广泛。开源和闭源商城网站系统是商家们花时间和金钱开发出来的产品,有企业反映闭源的商城系统反而更让他们罩隐放心。

ZenCart是一款开源网店购物系统,基于PHP开发,姿液使用MySQL数据库和HTML构成。支持多种语言与货币。2023年,Zen Cart作为一个独立的项目从osCommerce分支出来。除了美观上的一些改变外,Zen Cart与osCommerce系统更大的不同就是结构的改变,比如模板系统,以及其他核心的内在特征。

  magento系统是近几年在全球范围兴起的,功能非常强大的网店系统,比zencart要新,所以功能更加强大,基于PHP语言和MYSQL数据库。

  IMCART开源商城系统,是国内首家自主开发的外贸商城系统,在功能和桥册高模板设计上,都有很大的进步,而且价格相对来说也很公道。在业界也是小有名气的。对外贸电商的知识储备要求没有那么高。

  zencart建站在业界是品牌产品,magento同理,两者都有各自的优缺点,zencart因为发展较早,所以在业界的地位目前很少有其他产品撼动。如果要选择商城系统的话,要看网站的敏尺程序是什么类型的。IMCART的系统需求和zencart相似。总之,要选择什么,都要看自己的需要。将这三个去研究一下就好了。

楼上回答的很不错!可以采纳~

mysql数据库闭源的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于mysql数据库闭源,MySQL数据库宣布闭源后,开源世界迎来大变革,怎么安装PHP环境?,外贸商城系统哪个好,开源和闭源是什么呀的信息别忘了在本站进行查找喔。


数据运维技术 » MySQL数据库宣布闭源后,开源世界迎来大变革 (mysql数据库闭源)