我有一个连接到名为讨论的 MongoDB 数据库的应用程序。我创建了一个用户
蒙戈外壳:
> use discussions
switched to db discussions
> db.auth("discussions","XXXXXXXXX")
1
> show users
{
"_id" : "discussions.discussions",
"user" : "discussions",
"db" : "discussions",
"roles" : [
{
"role" : "dbOwner",
"db" : "discussions"
}
]
}
Run Code Online (Sandbox Code Playgroud)
所以这是为了确认我在数据库上确实有一个帐户,并且它是 dbOwner。根据文档,它具有 READ、WRITE 等权限。
配置文件启用了“auth = true”属性,并且自更改以来该服务已被退回不止一次。
但是,问题是当我尝试从 shell 外部连接到数据库时,我总是收到错误消息:
mongo discussions -u 'discussions' -p 'XXXXXXXXX'
MongoDB shell version: 2.6.3
connecting to: discussion
2014-08-05T01:00:39.026+0400 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1210
exception: login failed …Run Code Online (Sandbox Code Playgroud) 我已经成功地在本地 linux 服务器上创建了一个到我们的云 postgresql 服务器的 SSH 隧道,使用以下命令:
ssh -N -f -L 5431:localhost:xxxx mycloudserver.com
Run Code Online (Sandbox Code Playgroud)
(其中 xxxx 是远程端口)
使用这个命令我可以通过端口 5431 访问远程 PostgreSQL 数据库,但只能在这个 linux 服务器上。
现在我想与网络上的其他PC“共享”此连接,以便我可以使用ODBC驱动程序连接到linux_server:5431并读取云数据库,而无需在客户端上安装任何SSH软件。使用 iptables 打开端口 5431 不起作用。
iptables -A INPUT -p tcp -s 0/0 --sport 1024:65535 -d 192.168.128.5 --dport 5431 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -s 192.168.128.5 --sport 5431 -d 0/0 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
已经试过了
ssh -N -f -L 5431:0.0.0.0:xxxx mycloudserver.com
Run Code Online (Sandbox Code Playgroud)
也。隧道已成功构建并在服务器上运行,但我无法“看到”来自客户端的连接。
我很好奇人们如何db migrate在他们的 eb 应用程序上运行命令。如果您将其添加为一个.ebextensions我担心当您为一个应用程序有多个实例时,如果多个服务器尝试运行相同的迁移,则可能会发生冲突。
应该在部署过程中的什么时候db migrate运行命令?
我的一台客户端服务器的磁盘空间不足时遇到问题。
的命令的输出ls -lah在/var/lib/mysql所示:
drwx------ 2 mysql mysql 16K Dec 30 2015 database_xyz
Run Code Online (Sandbox Code Playgroud)
但是当我使用命令检查同一目录中的文件大小时du -sh *,输出显示:
22G database_xyz
Run Code Online (Sandbox Code Playgroud)
为什么这些命令的输出显示两个完全不同的结果?
我的驱动器上只剩下 2.2GB。
root@jon-cust-lifeincity:/var/lib/mysql# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-root 49G 44G 2.2G 96% /
tmpfs 1007M 0 1007M 0% /lib/init/rw
udev 1002M 108K 1002M 1% /dev
tmpfs 1007M 0 1007M 0% /dev/shm
/dev/sda1 228M 16M 200M 8% /boot
Run Code Online (Sandbox Code Playgroud)
编辑:
原来那database_xyz实际上是一个目录,而不是一个文件。所以混乱是由我的大脑弥补的。
我有一个网站,用户需要登录。他们可以上传和删除自己的图片,但这些图片应该是私人的,所以图片没有设置为任何人都可以查看的公开。
我知道我们可以使用 IAM 策略将 S3 存储桶中不同文件夹的访问权限限制为不同的 IAM 用户。但是网站用户只是数据库中记录的普通注册用户(可能是MySQL),他们不是IAM用户。
在不需要每个网站用户的 IAM 用户的情况下进行设置的逻辑是什么?有什么好的例子可以推荐吗?或者我想太多了,有更简单的方法来设置这种限制?
在此先感谢您的任何建议。
我在 webapp 正确连接到 MySQL 服务器时遇到了问题,为了解决这个问题,我试图注释掉bind-address文件中的设置my.ini。
这似乎解决了问题,但是我想知道这是否与安全有关。对于生产环境来说,这是一个正确的设置,当然访问受用户/密码限制吗?将其注释掉和将其设置为 之间有什么区别bind-address=0.0.0.0?
希望你过得很好。
我们在 centos 服务器上安装了 postgres,并从 Ubuntu 机器通过 DBeaver 访问它。
每当我们尝试备份数据库时,都会出现错误“未指定本机客户端进行连接”。
我做了搜索,解决方案就像“哪个 postgres-> 并将其结果放入其中”
我不确定这一点,我们需要在 ubuntu 机器上安装 psql 客户端吗?
请帮忙
我有一个运行多个数据库实例的数据库服务器。我在访问特定数据库时遇到问题,想重新启动该数据库但不重新启动整个 db 服务器,因为它会影响实例中的其他数据库或同一服务器上的其他实例。
是否可以使用命令行或任何其他方式重新启动单个数据库?
是将数据库与服务器分离并重新连接还是将其脱机并重新联机与重新启动该数据库相同?
注意:只需添加一个托管在 win2k3 上的 MSSQL 2005 服务器。
使用固态驱动器(尤其是 PostgreSQL 数据库)(例如 HP 的IO Accelerator)提高数据库性能的体验是什么?你有没有看到任何明显的改进?
我有一个最近缩小的数据库,当我运行 sp_spaceused 时,我看到它有 500MB 的未分配空间。我正在尝试将此数据库保持在特定大小(对我的桌面用户进行 MSDE 大小限制),但我不确定未分配的空间是否会影响整个数据库大小。有没有办法从数据库中删除这个未分配的空间?
database ×10
mysql ×2
postgresql ×2
sql-server ×2
amazon-iam ×1
amazon-s3 ×1
centos ×1
du ×1
linux ×1
ls ×1
migration ×1
mongodb ×1
odbc ×1
performance ×1
security ×1
ssh-tunnel ×1
ubuntu ×1