小编Thi*_*key的帖子

打开和关闭数据库连接的成本是多少?

在 MySQL 中打开和关闭数据库连接(对于 Web 应用程序)的 CPU 密集程度如何

  • ...当数据库软件在本地主机上时?
  • ...当数据库软件在另一台机器上时?

mysql database-design mysql-5.5

16
推荐指数
2
解决办法
2万
查看次数

在 HDD 崩溃后启动 PostgreSQL 服务器导致 FAILED STATE

我使用Fedora 15PostgreSQL 9.1.4。Fedora 最近崩溃了,之后:

尝试启动 PostgreSQL 服务器:

service postgresql-9.1 start
Run Code Online (Sandbox Code Playgroud)

Starting postgresql-9.1 (via systemctl):  Job failed. See system logs and 'systemctl status' for details.
                                                       [FAILED]
Run Code Online (Sandbox Code Playgroud)

虽然,当我在系统重新启动后第一次启动服务器时服务器正常启动
但是,尝试使用psql会出现此错误:

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
Run Code Online (Sandbox Code Playgroud)

.s.PGSQL.5432文件不在系统的任何地方。Alocate .s.PGSQL.5432什么都不输出。


系统日志是这样的:

Aug 14 17:31:58 localhost systemd[1]: postgresql-9.1.service: control process exited, code=exited status=1
Aug …
Run Code Online (Sandbox Code Playgroud)

postgresql linux

10
推荐指数
1
解决办法
1万
查看次数

Webapp 和 MySQL:行级安全

我正在尝试在我使用 MySQL 开发的 webapp 上模拟行级安全性。

使用此方法:使用所需的表创建一个数据库,其中将存储与所有用户有关的数据,并为表的列建立适当的索引。

根据用户 ID 为特定用户创建 mysql“视图”。

为了实现行级安全,我还必须为每个用户创建 mysql 帐户,并在视图上设置“授予”权限。

对于 Web 界面,将使用基于 PHP 的 MVC 框架。

但是,根据我的研究:

1] Having separate mysql account per user "make the webapp less secure".
2]Having separate mysql account per user "increases the disk I/O".

问题:
1] How does creating mysql user per webapp user make the webapp less secure?
2] Does the disk I/O increase considerably?
3] Is there a better way to implement row-level-security in MySQL?
4]What are …

mysql database-design best-practices row-level-security

7
推荐指数
1
解决办法
1812
查看次数

PostgreSQL :这是因为锁(行级)吗?

我有一个大约有 210 万个元组的表。其中有纬度和经度列。我正在尝试将其转换为地理类型(带有 SRID 的点)。

我编写的函数(程序)在我限制条目时工作正常(比如 : SELECT id,longitude,latitude FROM list_of_location limit 50)。

CREATE OR REPLACE FUNCTION convertlatlon() RETURNS VOID AS $$
DECLARE rec RECORD;
BEGIN
    FOR rec IN SELECT id,longitude,latitude FROM list_of_location
    LOOP
    UPDATE list_of_location SET location= concat('SRID=4326;POINT(',rec.longitude,' ',rec.latitude,')') WHERE id=rec.id;    
    END LOOP;
END;
$$ LANGUAGE 'plpgsql' ;
Run Code Online (Sandbox Code Playgroud)
  • 当我尝试在整个表上运行它时,PostgreSQL 似乎什么都不做。已经等了一个半小时。
  • 在它运行的核心上消耗 99% 的 CPU。
  • 不会启动任何其他 PostgreSQL 实例以使用其他内核(因为请求来自单个用户?)。
  • 这是因为锁(行级)吗?
  • 如何规避这种情况?

postgresql spatial

2
推荐指数
1
解决办法
342
查看次数