yum install mongodb 3.2 fails - mongodb

I am trying to install mongodb 3.2 on a CentOS 7 machine and facing issues in locating the packages.
I have updated the repo file as per the documentation:
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
When running sudo yum install mongodb-org I am getting this error:
[centos#ip-10-24-1-228 ~]$ sudo yum install mongodb-org
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.osuosl.org
* epel: linux.mirrors.es.net
* extras: mirror.lax.hugeserver.com
* updates: mirror.hmc.edu
No package mongodb-org available.
Error: Nothing to do
Why do I get this message?

You need to configure the package management system (yum).
Create a /etc/yum.repos.d/mongodb.repo file to hold the following configuration information for the MongoDB repository:
If you have a 64bit system, use the following config:
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
32bit isn't recommended for production deployments, but you may use:
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/
gpgcheck=0
enabled=1
When you install the packages, you choose whether to install the current release or a previous one. This step provides the commands for both.
To install the latest stable version of MongoDB, run:
sudo yum install mongodb-org
To install a specific release of MongoDB, specify each component package individually and append to it the version number to the package name, as in the following example that installs the 3.2.0 release:
yum install mongodb-org-3.2.0 mongodb-org-server-3.2.0 mongodb-org-shell-3.2.0 mongodb-org-mongos-3.2.0 mongodb-org-tools-3.2.0
If you are still stuck, following this carefully might be helpful.

I figured out what was my problem. It was in my yum.conf file
exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
Once I commented out this line from yum.conf, everything went fine.

You should know that this URL https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ is not working anymore.
Go to http://repo.mongodb.org/yum/redhat/ and download mongodb-org.repo file.
Configure the package management system (yum), copy mongodb-org.repo to /etc/yum.repos.d/, so that you can install MongoDB directly, using yum.
Install the MongoDB packages and associated tools.
sudo yum install -y mongodb-org mongodb-org-server
Unfortunatelly mongodb website documentation suggests using https://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat/, but this is wrong way.

This is a more recent version of Idos answer from Install MongoDB Community Edition on Red Hat Enterprise or CentOS Linux.
Configure the package management system (yum).
Create a /etc/yum.repos.d/mongodb.repo file so that you can install MongoDB directly, using yum.
For MongoDB 3.6
Use the following repository file:
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
For versions of MongoDB earlier than 3.6
To install the packages from an earlier release series such as 3.4, you can specify the release series in the repository configuration. For example, to restrict your system to the 3.4 release series, create a /etc/yum.repos.d/mongodb.repo file to hold the following configuration information for the MongoDB 3.4 repository:
[mongodb-org-3.4]
name=MongoDB 3.4 Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1
You can find .repo files for each release in the repository itself. Remember that odd-numbered minor release versions (e.g. 3.5) are development versions and are unsuitable for production use.
Install the MongoDB packages.
To install the latest stable version of MongoDB, issue the following command:
sudo yum install -y mongodb-org
To install a specific release of MongoDB, specify each component package individually and append the version number to the package name, as in the following example:
sudo yum install -y mongodb-org-3.6.4 mongodb-org-server-3.6.4 mongodb-org-shell-3.6.4 mongodb-org-mongos-3.6.4 mongodb-org-tools-3.6.4
When you install the packages, you choose whether to install the current release or a previous one. This step provides the commands for both.
Start MongoDB.
You can start the mongod process by issuing the following command:
sudo service mongod start

I know this issue is old and more than 2 years but I have received this error recently in Mongo DB 4.0
I have checked my yum.conf by
vi /etc/yum.conf yum.conf
and there was one line with the following.
exclude=courier* dovecot* exim* filesystem httpd* mod_ssl* **mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools** mydns* nsd* p0f php* proftpd* pure-ftpd* spamassassin* squirrelmail*
Removed the
mod_ssl* mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
and changed it to
exclude=courier* dovecot* exim* filesystem httpd* mod_ssl* mydns* nsd* p0f php* proftpd* pure-ftpd* spamassassin* squirrelmail*
This has fixed my issue and should fix yours.

Hello Friend i will resoled problem
First Clean old data
sudo yum erase $(rpm -qa | grep mongod)
sudo rm -rf /etc/yum.repos.d/mongod*
sudo yum clean all
again create repo file new
/etc/yum.repos.d/mongodb-enterprise-4.4.repo
file so that you can install MongoDB enterprise directly using yum:
[mongodb-enterprise-4.4]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.4/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
Install MongoDB Enterprise 4.4.
Issue the following command:
sudo yum install -y mongodb-enterprise
Install a specific release of MongoDB Enterprise.
To install a specific release, you must specify each component package individually along with the version number, as in the following example:
sudo yum install -y mongodb-enterprise-4.4.1 mongodb-enterprise-server-4.4.1 mongodb-enterprise-shell-4.4.1 mongodb-enterprise-mongos-4.4.1 mongodb-enterprise-tools-4.4.1
If you only install mongodb-enterprise=4.4.1 and do not include the component packages, the latest version of each MongoDB package will be installed regardless of what version you specified.
Pin a specific version of MongoDB Enterprise.
Although you can specify any available version of MongoDB Enterprise, yum upgrades the packages when a newer version becomes available. To prevent unintended upgrades, pin the package by adding the following exclude directive to your /etc/yum.conf file:
exclude=mongodb-enterprise,mongodb-enterprise-server,mongodb-enterprise-shell,mongodb-enterprise-mongos,mongodb-enterprise-tools
By default, MongoDB runs using the mongod user account and uses the following default directories:
/var/lib/mongo (the data directory)
/var/log/mongodb (the log directory)
➤ If you installed via the package manager,
The default directories are created, and the owner and group for these directories are set to mongod.
➤ If you installed by downloading the tarballs,
The default MongoDB directories are not created. To create the MongoDB data and log directories:
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
sudo systemctl daemon-reload
sudo systemctl start mongod
Any Error Come than ones Clean old
Option:- not create socket file than /tmp
in old socket file remove
sudo systemctl daemon-reload
sudo systemctl start mongod
sudo service mongod status
more info to read https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-on-red-hat/
https://www.mysterydata.com/how-to-install-mongodb-4-0-on-centos-7-rhel-7/

#nikolai.serdiuk seems to be correct. The baseurl provided in Mongo's Documentation doesn't seem to be functional. Replace that step with this instead (1):
yum-config-manager --add-repo http://repo.mongodb.org/yum/redhat/mongodb-org.repo
and then continue on with (2):
sudo yum install -y mongodb-org
Hope this helps.

Create a mongodb-org.repo file
sudo vi /etc/yum.repos.d/mongodb-org.repo
Add following content
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-
org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
Then execute sudo yum install mongodb-org
Reference:docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

first you have to create repo in your redhat system.
cd /etc/yum.repos.d/mongodb-org.repo
and Enter i, and copy-past this.
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
and save it like- enter ctrl + : and enter : + qw
and run this command
yum install mongodb-org

Check and remove old version mongodb
yum list installed mongodb.x86_64
yum remove mongodb.x86_64
It helps

Hello Friend i will resoled problem
First Clean old data
sudo rm -rf /etc/yum.repos.d/mongod*
sudo yum clean all
again create repo file new
/etc/yum.repos.d/mongodb-enterprise-4.4.repo
file so that you can install MongoDB enterprise directly using yum:
[mongodb-enterprise-4.4]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.4/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
Install MongoDB Enterprise 4.4.
Issue the following command:
sudo yum install -y mongodb-enterprise
Install a specific release of MongoDB Enterprise.
To install a specific release, you must specify each component package individually along with the version number, as in the following example:
sudo yum install -y mongodb-enterprise-4.4.1 mongodb-enterprise-server-4.4.1 mongodb-enterprise-shell-4.4.1 mongodb-enterprise-mongos-4.4.1 mongodb-enterprise-tools-4.4.1
If you only install mongodb-enterprise=4.4.1 and do not include the component packages, the latest version of each MongoDB package will be installed regardless of what version you specified.
Pin a specific version of MongoDB Enterprise.
Although you can specify any available version of MongoDB Enterprise, yum upgrades the packages when a newer version becomes available. To prevent unintended upgrades, pin the package by adding the following exclude directive to your /etc/yum.conf file:
exclude=mongodb-enterprise,mongodb-enterprise-server,mongodb-enterprise-shell,mongodb-enterprise-mongos,mongodb-enterprise-tools
By default, MongoDB runs using the mongod user account and uses the following default directories:
/var/lib/mongo (the data directory)
/var/log/mongodb (the log directory)
➤ If you installed via the package manager,
The default directories are created, and the owner and group for these directories are set to mongod.
➤ If you installed by downloading the tarballs,
The default MongoDB directories are not created. To create the MongoDB data and log directories:
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
sudo systemctl daemon-reload
sudo systemctl start mongod
Any Error Come than ones Clean old
Option:- not create socket file than /tmp
in old socket file remove
sudo systemctl daemon-reload
sudo systemctl start mongod
sudo service mongod status

This command
yum-config-manager --add-repo http://repo.mongodb.org/yum/redhat/mongodb-org.repo
will create the repo as above suggested. Then it will work.

Follow the below steps to install MongoDB on CentOS
Add MongoDB yum repository
# vi /etc/yum.repos.d/mongodb.repo
Enter i and paste the below lines in the file
[MongoDB]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1
Press esc to save the vim file then enter :wq to quit the saved file.
3.Install MongoDB server
yum install mongodb-org
Start MongoDB Service
# systemctl start mongod.service # For CentOS 7
# service mongod restart # For CentOS 6/5
Check Mongod version
mongod --version
Referance: Installing MongoDB on CentOS

Related

Why is installing PostGIS 3 on RHEL 8 / CentOS 8 impossible?

I am attempting to install the latest PostGIS 3.0.x on CentOS 8, with no luck.
I don't think anyone is running PostGIS on RHEL 8 or CentOS 8, I can't understand why not. It does not seem possible to install.
I have successfully installed Postgres 12.0 by disabling the RHEL AppStream
Steps I took installing postgres 12 on CentOS 8:
1)
#dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2)
#dnf --disablerepo AppStream install postgresql12
#dnf --disablerepo AppStream install postgresql12-server
I am attempting now to install PostGIS.
#dnf list --available | grep postgis30
I see that postgis30_96 is the latest offered (as listed below):
postgis30_96.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-client.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-client-debuginfo.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-debuginfo.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-devel.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-docs.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-gui.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-gui-debuginfo.x86_64 3.0.0alpha4-6.rhel8 pgdg96
postgis30_96-utils.x86_64 3.0.0alpha4-6.rhel8 pgdg96
When I try to install with the following command:
#dnf install postgis30_96
I get these errors:
Last metadata expiration check: 1:22:58 ago on Tue 15 Oct 2019 08:25:10 PM UTC.
Error:
Problem: cannot install the best candidate for the job
- nothing provides hdf5 needed by postgis30_96-3.0.0alpha4-6.rhel8.x86_64
- nothing provides xerces-c needed by postgis30_96-3.0.0alpha4-6.rhel8.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
I look for xerces-c, and nothing is returned:
#dnf list --available | grep xerces-c
Where do I get xerces-c to install?
I look to see if hdf5 is available to install (dependency)
#dnf list --available | grep hdf5
and nothing is returned. How do I satisfy these dependencies, so that PostGIS will install?
I goto the hdf5 website, download the source and it's a BIG FAT MESS. The build/install instructions do not work - the code is out of sync with the install instructions.
I check the hdf5 website and find another set of build/install instructions, and they too are out of sync with the latest code base. I don't know which way is up with this project, if it's a zombie project out there on the web, seemingly alive, but nobody's home.
How do I get hdf5 easily onto my system and xerces-c so that nothing existing gets mucked up? I would prefer to install these through any somewhat sanctioned CentOS 8 package repo using dnf.
I can't log this issue on the PostGIS ticket tracking system. Logging a ticket there requires an OSGEO ID, and when I request a 'mantra' to get started, nothing is returned, no response,
OSGEO is yet another zombie project, nobody's home. https://www.osgeo.org/community/getting-started-osgeo/osgeo_userid/
Please respond only if you have actually done this yourself on a CentOS 8 machine or VM, while I appreciate suggestions, pointers or imaginations from others, it pollutes r/postgis reddit with misinformation, non-working solutions, and not only wastes my time with dead ends, but also the time of others.
Someone else inevitably comes along with the same problems and is misguided with these those that are well-intentioned, but provide incorrect or incomplete information.
I had the same problem and finally found the solution. I need postgis25 for postgresql10, so I typed this command
dnf --enablerepo=PowerTools install postgis25_10
The PowerTools repo has the packages from codeready-developer repo, from Redhat CodeReady Studio. It contains a lot of useful tools.
Cannot enable PowerTools for RHEL 8
https://access.redhat.com/discussions/5417621
Remarks: PowerTools is a CentOS repository. On RHEL 8 we have the CodeReady Builder repository!
I am now able to install PostGIS-3 for PostgreSQL-12 on RHEL-8.
Solution:
sudo subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
dnf install postgis30_12
Summing up the previous answers, these are the commands needed to install PostGIS-3 on CentOS-8:
dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf --enablerepo=PowerTools install postgresql12-server postgresql12-contrib postgis30_12
Many of the answers were helpful. To sum up the steps I had to take and errors in the instructions at https://people.planetpostgresql.org/devrim/index.php?/archives/107-Installing-PostGIS-3.1-and-PostgreSQL-13-on-CentOS-8.html
As mentioned by Marcelo, for RHEL use code-ready, not powertools.
As mentioned in this thread, don't mix packages. Run dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
to get the pgdg repo before installing postgres. Then run dnf -qy module disable postgresql if needed then install postgres like sudo dnf install -y postgresql13-server
The command to install epel-repo listed here may not work. Try sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Get the name of the latest postgis release with this command. sudo dnf list --available | grep postgis3 As mentioned by Nick, the second two digits are your postgres version.
Install postgis sudo dnf -y install postgis3x_xx I repeat, the second two digits are your postgres version.
So, in summary, to install postgres and postgis on my rhel8 sytstem, I ran these commands in this order.
sudo dnf -qy module disable postgresql
sudo dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf install -y postgresql13-server
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
sudo dnf -y install postgis31_13
The postgis30_96 packages are for Postgres 9.6. You need postgis30_12 for Postgres 12.
These packages are definitely in the repo, so if your dnf list isn't seeing them, it may be an instance of a known issue in which "yum/dnf refuse to find/install many packages from PGDG repository on RHEL8".
As a workaround, the Postgres Yum Howto recommends this installation procedure:
dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
dnf install postgresql11-server postgresql11-contrib
Percona Postgresql 13 And Postgis 3.0
https://www.percona.com/doc/percona-repo-config/index.html
dnf remove postgresql
sudo dnf install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
sudo percona-release setup ppg-13
You can refer here:
https://www.percona.com/doc/postgresql/LATEST/installing.html#using-the-rpm-format
sudo dnf module disable postgresql
sudo dnf install percona-postgresql13-server
sudo dnf install percona-pg_repack13
sudo dnf install percona-pgaudit
sudo dnf install percona-pgbackrest
sudo dnf install percona-patroni
sudo dnf install percona-pg-stat-monitor13
sudo dnf install percona-postgresql13-contrib
/usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl start postgresql-13
PostGIS
dnf -y config-manager --set-enabled PowerTools
dnf install -y postgis30_13 postgis30_13-client
What helped me in CentOS container (as a root):
yum -y install dnf-plugins-core && yum config-manager --set-enabled powertools
Installing dnf-plugins-core and enabling powertools.

Unable to install mongodb properly on ubuntu 18.04 LTS

I am trying to install mongodb on my Ubuntu 18.04 LTS, but it has the following error saying
You might want to run 'apt --fix-broken install' to correct these. The
following packages have unmet dependencies: mongodb-org : Depends:
mongodb-org-server but it is not going to be installed
Depends: mongodb-org-mongos but it is not going to be installed
Depends: mongodb-org-tools but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with
no packages (or specify a solution).
umar#umar-Lenovo-ideapad-320-15ISK:~/Desktop/portfolio/async-demo$
sudo apt-get install -y mongodb
I beleieve the reason behind this is already mentioned on their website, clearly saying
PLATFORM SUPPORT
MongoDB only provides packages for 64-bit LTS (long-term support)
Ubuntu releases; for example, 14.04 LTS (trusty) and 16.04 LTS
(xenial). See Supported Platforms for more information.
These packages may work with other Ubuntu releases; however, they are
not supported.
So how can I install mongodb on my latest Ubuntu 18.04 LTS?
For sake of clarity, I am listing the things I did to correct the errors:
I followed their official website to install mongodb
1. sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
2. echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
3. sudo apt-get update
4. sudo apt-get install -y mongodb-org
Now here I got errors saying: You might want to run 'apt --fix-broken
install' to correct these. The following packages have unmet
dependencies:
I tried,
apt --fix-broken install
It did not work, somewhere I got clue to run
sudo apt -f install
It also returned error.
Errors were encountered while processing:
/var/cache/apt/archives/mongodb-org-server_4.0.0_amd64.deb
/var/cache/apt/archives/mongodb-org-mongos_4.0.0_amd64.deb
/var/cache/apt/archives/mongodb-org-tools_4.0.0_amd64.deb E:
Sub-process /usr/bin/dpkg returned an error code (1)
I believe the main problem is compatability with version. So basically I have Ubuntu 18.04, how I install mongodb on this version, so that I can work without any trouble.
You need to first uninstall the mongodb, you can use:
sudo apt-get purge mongodb-org*
After this, install mongodb through the following commands:
sudo apt-get install mongodb
And then update:
sudo apt-get update
You are done with the installation of mongodb. You can check it by using the below command:
mongo --version
EDIT: It's been a number of years, and unfortunately the top answer still points users away from the latest stable version of MongoDB. In fact the last available package for mongodb is 3.6.3.
I don't work at the company anymore, but I will point to:
https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-ubuntu/
That's the best way to install the latest stable version MongoDB. It includes instructions for adding the necessary repositories and keys to allow running apt install mongodb-org. There is a platform support matrix that will help with identifying which versions of MongoDB you can install on any given Linux OS version.
just want to chime in here. I'm the Senior Technical Writer for MongoDB Server Docs. This post is one of a few that comes up with "install MongoDB on Ubuntu 18.04", and there are several comments here referencing the mongodb package for installation. The unofficial mongodb package provided by Ubuntu is not maintained by MongoDB. You should always use the official MongoDB mongodb-org packages. Furthermore, from a bit of personal testing it looks like having mongodb installed will cause issues if you try to install mongodb-org, so its just added trouble
The few times I've run into this issue when testing locally, attempting to install one of the subpackages (i.e. mongodb-org-server) usually surfaced the actual error (i.e. missing libcurl3, which was removed in 18.04 as a default installed library). These issues may be more common when testing development builds ( at the time of writing, that's the 4.2 dev series).
To check which package you have installed on your local system, run the following:
sudo apt list --installed | grep mongo
This was my output after I installed mongodb, then attempted mongodb-org:
mongo-tools/bionic,now 3.6.3-0ubuntu1 amd64 [installed,auto-removable]
mongodb-org/bionic,now 4.0.5 amd64 [installed]
mongodb-org-shell/bionic,now 4.0.5 amd64 [installed,automatic]
mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,auto-removable]
So you can see, I've got a mix between the two packages (and a bunch of dkpg errors). I ended up using a mix of apt remove , apt autoremove, and apt purge to fix up the system.
Based on this excellent Answer:
https://stackoverflow.com/a/51421152/659354
And this Page:
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
The commands I used to install MongoDB 4.2
sudo apt-get purge mongo* - Note: mongo to remove the client as well as the server.
sudo apt-get install mongodb-org - Note: install command run after the Mongodb.org Source was added to the Apt-get sources list.
This is because as of now Mongo DB for Ubuntu 18.04 is only available as a development version (See: MongoDB Distros).
I just installed it by doing the following:
Add the corresponding signature:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4B7C549A058F8B6B
Add the supported version:
echo "deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/development multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
Update:
sudo apt update
Install:
sudo apt install mongodb-org-unstable
If you get a "GPG error" repeat step 1 with the key that is shown in the error message. You might be able to install via
sudo apt install mongodb
but according to MongoDB this is not supported and will most probably not install the newest version.
The easiest way to install MongoDB and use the mongod command on ubuntu 18.04.
Update the packages list.
$ sudo apt update
Install the MongoDB.
$ sudo apt install -y mongodb
Check the service's status.
$ sudo systemctl status mongodb
3a. You should see
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor
preset:enabled)
Active: active (running) since Sat 2019-03-11 10:45:01 UTC; 4min 13s ago
Docs: man:mongod(1)
Main PID: 2312 (mongod)
Tasks: 23 (limit: 1153)
CGroup: /system.slice/mongodb.service
└─2312 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config
/etc/mongodb.conf
To allow access to MongoDB on its default port 27017
$ sudo ufw allow 27017
Check status
$ sudo ufw status
5a. You should see
Status: active
To Action From
-- ------ ----
27017 ALLOW Anywhere
27017 (v6) ALLOW Anywhere (v6)
5b. If it returns inactive
$ sudo ufw enable
Output:
Firewall is active and enabled on system startup.
Check the / directory to see if there is a data/db directory, if not:
$ sudo mkdir -p /data/db
To run the mongod first you need stop mongodb:
$ sudo systemctl stop mongodb
Finally, you can run the mongod:
$ sudo mongod
cd /etc/apt/sources.list.d
remove files related to mongodb
sudo apt update
This solved it for me.
Uninstall and remove any Mongo packages.
$ sudo apt-get purge mongodb-org*
Check if related directories removed
$ sudo rm -r /var/log/mongodb
$ sudo rm -r /var/lib/mongodb
Recheck for autoremove any remaining mongo packages
$ sudo apt-get autoremove
Configure your directory
$ sudo dpkg --configure -a
Force install anything required
$ sudo apt-get install -f
Install from official site: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
Finally restart your Ubuntu and check status of Mogodb server as you did earlier.
If you need to install mongodb binary (Manually) to your Ubuntu 18.04 LTS (Bionic). You need to download mongodb .tgz file from this link .
1) Download it to your ~/Downloads folder and moveit to home directory by typing mv Downloads/mongodb-linux-x86_64-ubuntu1804-4.0.4.tgz ~/
2) Then unter it by typing tar -zxvf mongodb-linux-x86_64-ubuntu1804-4.0.4.tgz place it here (Home directory /home/). Dont move it from here.
3) Then make a directory at /data/db location and give write permission to thatdirectory.
sudo mkdir -p /data/db
sudo chmod -R 777 /data/db
4) Now, this is the tricky area. Make sure u r in hme directory by typing pwd (Present Working Directory)
pwd
it will show
/home/<your user name>
Then type
ls -al
This command will show up all hiddenfile at home directory and search for
~/.bashrc
5) Edit the .bashrc file and write
export PATH=mongodb-linux-x86_64-ubuntu1804-4.0.4/bin:$PATH
and save the file type source ./bashrc
Then type echo $PATH at terminal it will display ~/mongodb-linux-x86_64-ubuntu1804-4.0.4/bin:/home/xenon/.nvm/versions/node/v10.15.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
6) Now at terminal type mongo --nodb
it will show MongoDB shell version v4.0.4
From here , you are all set, go ahead and enjoy mongodb installation. This istallation is bit complex but by this method you can easily control the version of mongodb and use it as per your need.
7) Then start mongod
>sudo mkdir -p /var/log && sudo chmod -R 777 /var/log
>mongod --port 27017 --dbpath /data/db --logpath /var/log/local.log --fork
>mongo --port 27017
I had the same problem, and for me the solution was purge, but with the (*) . Purge everything, so i did this:
sudo apt-get purge mongo-tools*
sudo apt-get purge mongodb*
then i follow the steps from the documentation. (Actual version is 4.2.2), and the installation was in Ubuntu 18.04. (URL: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/)
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
sudo apt-get update
sudo apt-get install -y mongodb-org
With that four steps from the documentation i finally install mongodb community edition on Ubuntu. My problem was 3 files,that can't process.
mongodb-org-server
mongodb-org-mongos
mongodb-org-tools
I hope its help someone
run sudo apt autoremove and re-install mongodb .
For Ubuntu version 18.04 LTS, it's better if you will install MongoDB manually.
I need to go through the following steps to make it run on my Ubuntu 18.04:
Fallow manual installation steps from the following mongo DB manual
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu-tarball/
Download .tgz with the following configurations
Download MongoDB
Please note, when you install MongoDB 3.6 or above, it comes up with Curl library of "libcurl4" version and which has some compatibility issues on ubuntu 18.04
Due to this, you will end up resulting following output when try to execute "mongod" command:
mongod: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version
`CURL_OPENSSL_3' not found (required by mongod)
To fix this problem, you need to uninstall "libcurl4" dependent library by using the following command
sudo apt-get remove libcurl4
Then need to install back lower curl lib version (i.e. "libcurl3"), as mongo expects it on ubuntu version "18.04"
sudo apt-get install libcurl3
You may need to use "sudo" to fork the data and log directories with the installation if it fails with the manual steps
sudo mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork
you can run "mongo" command now to see the mongo shell running.
It works for me.
I was facing a libssl1.1 issue when trying to install mongo-db in Pop!_OS 22.04 LTS (or Ubuntu 22.04 LTS).
Go to http://archive.ubuntu.com/ubuntu/pool/main/o/openssl
Find the exact version of libssl for example libssl1.1.1
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.20_amd64.deb
Then install
sudo dpkg -i libssl1.1_1.1.1-1ubuntu2.1~18.04.20_amd64.deb
Hope this helps others who are trying to do the same.
The issue is referenced in https://github.com/dotnet/sdk/issues/24759.
All credit goes to #feisalramar.
Just run the command sudo apt install mongodb it will install the mongodb, because mongodb is now part of ubuntu repository. After installation run command sudo service mongodb start to start the mongodb server. Then if you run command mongo it will give you shell helper. To see the existing database use command show dbs. After successfull installation you will find there pre existing database names are admin, config, local. Use command db to see which database is currently running on server, there will a database named test or somthing. To add a collection (tables on SQL DB) just use the insert command with an initial document (row in SQL DB) information db.data.insert({"username":"Brad Pitt"})
In previous command data is my collection name.
Now to see all documents in data collection just use command db.data.find();
Other commands:
sudo service mongod status, sudo service mongodb stop, sudo service mongod restart ,sudo service mongod stop.
For more information, you can visit https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
;
For me on Pop_OS Linux 20.04 LTS helped:
$ sudo apt-get purge mongodb*
Then creating /etc/apt/sources.list.d/mongodb-org-4.4.list file for Ubuntu 18.04 (Bionic) via this command:
$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
instead of Ubuntu 20.04 (Focal)
After that install mongodb-org:
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org
And start mongodb service:
$ sudo systemctl start mongod
This issue is only on Ubuntu 22.04,
Try this out:
echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt-get update
sudo apt-get install libssl1.1
Try this, I successfully find this out
$ sudo apt-get install -y mongodb

Mongodump without mongodb

Since it is possible to mongodump/mongorestore remotely, it makes sense to have them installed in a machine that is not the DB itself, right?
Is there a way to install a standalone mongodump executable?
Eg. in order to dockerize my DB backup tool
Ubuntu has the tools separate: mongodb-org-tools
Alpine also has an edge/community package: mongodb-tools
I am using the node:alpine Docker to run mongodump/restore and upload to S3, it works well.
You could also try installing and then copying the binaries, but I imagine they have a lot of dependencies so you might as well find a way to use the tools package, or you'll be creating your own.
mongo-tools since Ubuntu 18.04: https://launchpad.net/ubuntu/bionic/+package/mongo-tools
sudo apt install mongo-tools
Accepted answer did not work for me on a fresh install of Ubuntu 22.04.
E: Unable to locate package mongodb-org-tools
Following the instructions on the official MongoDB page worked.
Note that instructions are for installing MongoDB and optionally the tools. If you just want mongodump you can follow steps 1 to 3 and then run sudo apt install mongodb-org-tools
Here are the 3 steps for reference (Ubuntu 20.04, tested on 22.04):
Import the public key used by the package management system.
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
Create a list file for MongoDB.
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
Reload local package database
sudo apt-get update
Then install the tools:
sudo apt install mongodb-org-tools
You can perform backup of remote cluster using mongodump.
Command is :
/path/to/mongodump --host remote_cluster_hostname --port remote_cluster_port>
For Installing only mongodump utility below steps can be performed:
Step 1: Install Mongodb rpm, but don't start mongod process.
In a linux system if you have installed mongodb using rpm package, you should not start mongod process.
You can find the location of mongodump using this command: which mongodump
And use mongodump to perform remote backup.
Step 2:Use Zip packages of mongodb binaries instead of installing mongodb on server.
Download mongodb Zip packages and extract the zip. You can find all the mongodb binaries inside the zip folder.
Use mongodump to perform remote backup. In this way you don't need to follow installation steps of mongodb server and utilities.

How to Install mongodb on fedora 23

my system configuration is based on the attached image file.please help me out to install orelse I need to write a entire configuration ??
Create a /etc/yum.repos.d/mongodb-org-3.2.repo file so that you can
install MongoDB directly, using yum. Use the following repository file:
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
sudo yum install -y mongodb-org
Reference: MongoDB Docs for Installing mongodb

uninstalling mongo

I am having trouble uninstalling mongo from a 64 bit EC2.
In /usr/bin I have mongo and mongod amongst others.
When I type mongo from anywhere it opens the shell at version 1.8.
I now downloaded 2.0.2 and in that folder when I run mongo it opens up version 2.0.2
My question is how do I purge mongo fully so I can install 2.0.2 without coming across the old 1.8 version?
EDIT: I believe I used yum (it was a while ago), and I think the ec2 is fedora.
1.Stop Mongo DB using -
sudo service mongod stop
2.Remove Packages using -
sudo yum erase $(rpm -qa | grep mongodb-org)
3.Remove Data Directories using -
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongo
yum erase mongo-10gen mongo-10gen-server
I needed to run a yum list installed | grep mongo then yum remove those packaged
This should work
rpm -qa | less | grep mongo
using that command will give you the mongo packages you have installed, after that you can do
rpm -qa | less | grep mongo | xargs yum remove // <-- this will remove all packages automatically
but can also remove all of them Manually
this gets the job done easily
sudo yum erase mongodb-org*
First stop the mongo service
sudo service mongod stop
Then remove the packages
sudo yum erase $(rpm -qa | grep mongodb-org)
Then remove the log(data) directories
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongo
For Ubuntu users:
First, stop the service of MongoDB and then try uninstalling mongod.
Then, type these commands to uninstall mongodb:
sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
sudo apt-get purge mongodb-10gen
sudo apt-get autoremove
I used dnf command to list and uninstall mongodb from my EC2 servers (RedHat Enterprise Linux 8). Hope this helps for the RHEL8 users.
DNF_ is the next upcoming major version of YUM_, a package manager
for RPM-based Linux distributions. It roughly maintains CLI
compatibility with YUM and defines a strict API for extensions and
plugins.
For further reading about DNF usage...
https://dnf.readthedocs.io/en/latest/command_ref.html
To list down the mongodb installations (Use sudo if required)
sudo dnf list installed|grep mongodb
To uninstall/remove mongodb
sudo dnf remove mongodb-org
Then run the list command again to see if the installation is successful. It shouldn't show any mongodb-org packages if the uninstallation was successful.
sudo dnf list installed|grep mongodb
I think yum remove mongodb should do the trick.
First Stop the service of MongoDB and then try uninstalling mongod.
you can uninstall mongo db by this code
Uninstalling existing MongoDB packages
Since I'm not 100% what you've got installed, I suggest the following to make sure everything is uninstalled:
sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
sudo apt-get purge mongodb-10gen
sudo apt-get autoremove
Steps to uninstall MongoDB:
sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
sudo apt-get purge mongodb-10gen
sudo apt-get autoremove
Type which mongo This will show the executable path. Delete all the mongo related binaries in that path, then install the new version and copy all those binaries to /usr/bin directory. After this you will be able to access it without any issues.