首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将osm文件导入postgres/postgis数据库

将osm文件导入postgres/postgis数据库是一个常见的GIS数据处理任务。osm文件是OpenStreetMap项目中的地理信息数据,通常用于地图制图和地理信息系统。PostgreSQL/PostGIS是一个功能强大的开源数据库系统,它支持地理信息系统(GIS)功能,可以轻松地处理和存储地理空间数据。

以下是将osm文件导入PostgreSQL/PostGIS数据库的步骤:

  1. 安装必要的软件和工具:首先,确保您已经安装了PostgreSQL和PostGIS。此外,您还需要安装osm2pgsql工具,它是一个用于将OpenStreetMap数据导入PostgreSQL/PostGIS数据库的命令行工具。
  2. 创建数据库和扩展:使用psql命令行工具创建一个新的PostgreSQL数据库,并为其启用PostGIS扩展。例如:
代码语言:txt
复制
CREATE DATABASE my_osm_db;
\c my_osm_db
CREATE EXTENSION postgis;
  1. 下载osm文件:从OpenStreetMap网站或其他来源下载osm文件。例如,您可以从Geofabrik网站下载全球或区域级别的osm文件。
  2. 导入osm文件:使用osm2pgsql工具将osm文件导入PostgreSQL/PostGIS数据库。例如:
代码语言:txt
复制
osm2pgsql -d my_osm_db -U postgres -W path/to/your/osmfile.osm

这将导入osm文件并将其存储在名为“planet_osm_roads”的表中。您可以根据需要更改表名和其他参数。

  1. 查询和分析数据:一旦osm文件被导入数据库,您可以使用SQL查询和PostGIS函数对数据进行分析和查询。例如,您可以使用以下查询来获取所有道路的名称和坐标:
代码语言:txt
复制
SELECT name, ST_AsText(way) FROM planet_osm_roads WHERE highway IS NOT NULL;

总之,将osm文件导入PostgreSQL/PostGIS数据库是一个常见的GIS数据处理任务,可以使用osm2pgsql工具轻松完成。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

批量本地gis数据导入postgis数据库

以前在处理gis数据的时候,都是直接导入本地shp素材、本地geojson素材,本地topojson素材,自从接触postgis数据之后,深感使用规范的存储系统来统一管理gis数据的好处,特别是数据量大了之后...,优势便更加明显,你可以选择很多需要做空间计算的步骤转移到Postgis数据库内进行计算,要知道Postgis提供的空间计算能力与R和Python这种应用导向的工具相比,优势要大得多。...在批量导入素材之前,我们可以先看下R语言目前提供的各种导入接口在I/O性能上相比有何异同。...4p.shp", options = "ENCODING=gbk" )) 用户 系统 流逝 0.05 0.00 0.05 可以看到在同一个shp文件单项导入的情况下...的话,你会发现作者把大部分空间运算的函数名称设计的和Postgis中的函数一模一样,这就意味着你无论是只了解过sf包函数,或者只了解过Postgis函数,都可以低成本的迁移到两一个平台,因为同名函数往往功能一致

2.4K10

OpenStreetMap导出的OSM数据导入MySQL数据库

import-osm-data-into-mysql-2.png 我们点击红框内的导出按钮可以导出上面默认区域(两个经纬度组成的区域)内的全部地图数据(街道、建筑等),导出数据文件的后缀格式为.osm,...默认导出文件的名称为map.osm。...安装osmosis 我们已经导出了地图数据(map.osm),我们可以通过osmosis来实现数据导入数据库,osx系统可以通过brew进行安装,如下所示: yuqiyu@hengyu ~> brew...install osmosis 初始化数据库表 通过osmosis导入数据库时,需要提前创建数据库以及数据表,点击 下载MySQL建表语句。...导入数据库 yuqiyu@hengyu ~> osmosis --read-xml file="/Users/yuqiyu/Downloads/map.osm" --write-apidb-0.6 host

4.7K20
  • 文件导入数据库中_csv文件导入mysql数据库

    如何 .sql 数据文件导入到SQL sever中? 我一开始是准备还原数据库的,结果出现了如下问题。因为它并不是备份文件,所以我们无法进行还原。...开启后我们再进入SQL 点击文件→打开→文件 找到自己想要添加进来的数据库文件 这里是 student.sql 打开后点击“执行”,我一直点击的事右边那个绿三角,所以一直没弄出来(唉,可悲啊)...执行完成后我们可以在对象资源管理器中看到我们的数据库文件导入了!...3、与上述两种数据库DSN不同,文件DSN把具体的配置信息保存在硬盘上的某个具体文件中。文件DSN允许所有登录服务器的用户使用,而且即使在没有任何用户登录的情况下,也可以提供对数据库DSN的访问支持。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站立刻删除。

    14.3K10

    怎么sql文件导入数据库_mysql导入sql文件命令

    创建数据库 新建一个新数据库用来导入.sql数据 CREATE DATABASE 数据库名; // 创建数据库 show databases; // 显示目前有的数据库 3....导入.sql文件导入.sql文件之前,设置一下编码模式,防止出现中文乱码的情况(第一次导入就出现了中文乱码,所以中添加一步防止出现乱码情况)。...use 数据库名; // 选择数据库 set names utf8;// 设置编码模式为utf8 source 数据库名.sql; // 导入sql文件,需要使用文件所在的路径 以上就是.sql文件导入数据库的全部操作...,这是打开新建的数据库就能看到导入进去的表内容。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站立刻删除。

    17.3K20

    PostGIS导入导出ESRI Shapefile数据

    这里介绍如何导入我们常用的ESRI Shapefile数据到PostgreSQL数据库中,我们可以使用PostGIS提供的shp2pgsql和pgsql2shp工具进行导入和导出操作,还可以使用GDAL...\c postgis_in_action 然后在postgis_in_action数据库中启用PostGIS扩展。...,PostGIS的参考系和EPSG代码是一样的,比如EPSG:4326表示WGS84地理坐标系 -I指定在新建的关系表的空间对象的那一列建立空间索引 然后,双引号引起来的是Shapefile的文件名称...如果要保存成为Geography对象,则需要在shp2psql命令行导入的时候加入-G参数。 ---- 下面说说数据的导出,我们可以使用psql2shp工具导出数据为Shapefile文件。...staging.world_continent -f后面是导出的文件全路径 -P后面接用户postgres的密码 最后面postgis_in_action是数据库名称,staging.world_continent

    3.7K10

    详解Linux中PostgreSQL和PostGIS的安装和使用

    yum install postgresql-server postgresql postgis 初次安装后,默认生成一个名为 postgres数据库和一个名为 postgres数据库用户。...转换 .shp 文件PostGIS 数据库中 转换 .shp 到 .sql 文件 首先找到需要转换的文件,假设需要转换的 .shp 文件是:/tmp/demo.shp,那么就做以下操作: $ sudo.../demo.shp:.shp 文件的路径 entry:表示要导入数据库表名——假设这个 .shp 文件表示的是各个入口,所以我命名为 “entry” demo.sql 得到了 .sql 文件后,就可以直接导入到...:也就是前面的 template_postgis dbuser:你的账户名,我一般使用 postgres 导入 .sql 文件 sudo su postgres psql \c newdb \i demo.sql...\d 可以看到,.sql 文件已经被导入了。

    3.5K31

    如何在Ubuntu 14.04上安装和配置PostGIS

    在本教程中,您将安装PostGIS,为空间数据配置PostgreSQL,一些空间对象加载到数据库中,以及执行基本查询。...使用该sudo命令切换到postgres用户: sudo -i -u postgres 然后连接到test1数据库: psql -d test1 接下来,在数据库上启用PostGIS扩展: CREATE...第四步 - 加载空间数据 让我们一些空间数据加载到我们的数据库中,这样我们就可以熟悉这些数据导入PostgreSQL的工具和过程,因此我们可以稍后进行一些空间查询。...该ogr2ogr命令基于文件中的前几个特征对几何类型进行假设。我们导入的数据包含多边形类型和部分多边形或MultiPolygons的混合。...使用PostGIS和我们导入的数据很容易。 重新登录test1数据库

    2.5K00

    Excel文件数据库导入SQL Server

    Excel文件数据库导入SQL Server的三种方案//方案一: 通过OleDB方式获取Excel文件的数据,然后通过DataSet中转到SQL Server openFileDialog = new...ToString().Trim();         tableName = "[" + tableName.Replace("'","") + "]";         //利用SQL语句从Excel文件里获取数据...DataMember = tableName;         dataGrid1.SetDataBinding(dataSet,"gch_Class_Info");         //从excel文件获得数据后...Exception ex)     {         Console.WriteLine(ex.ToString());     } } //方案二: 直接通过SQL语句执行SQL Server的功能函数Excel...文件转换到SQL Server数据库 OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "Excel

    2.2K30

    如何在Ubuntu 14.04上安装和配置PostGIS

    使用该sudo命令切换到postgres用户: sudo -i -u postgres 然后连接到test1数据库: psql -d test1 接下来,在数据库上启用PostGIS扩展: CREATE...第4步 - 加载空间数据 让我们一些空间数据加载到我们的数据库中,这样我们就可以熟悉这些数据导入PostgreSQL的工具和过程,因此我们可以稍后进行一些空间查询。...导航到您的主文件夹并创建一个名为nedata的新文件夹。我们将使用此文件夹保存我们下载的Natural Earth数据。...ogr2ogr命令基于文件中的前几个特征对几何类型进行假设。我们导入的数据包含多边形类型和多部分多边形或MultiPolygons的混合。...使用PostGIS和我们导入的数据很容易。 重新登录test1数据库

    1.6K00

    PostGIS导入导出栅格数据

    上一篇博文PostGIS导入导出ESRI Shapefile数据介绍了如何导入空间矢量数据到PostgreSQL中,紧接上一篇,本文介绍如何使用PostGIS导入导出空间栅格数据。...PostGIS提供了raster2pgsql工具用于栅格数据的导入(可以使用man raster2pgsql命令查看帮助文档)。...注意:PostGIS的默认导出GDAL支持的格式数据是关闭的,启用的话需要修改PostgreSQL的配置文件。修改的方法比较多,而且不同的PostgreSQL版本的支持情况不一样。...我使用如下命令进行修改: sudo vim /etc/postgresql/9.5/main/postgresql.conf 在该配置文件后面添加: postgis.gdal_enabled_drivers...---- 下面我使用Python的Psycopg库连接PostgreSQL数据库,进行查询并导出最终的结果。

    4.5K20

    PostGIS批量导入栅格数据

    如果我们有一批以文件存储的影像数据如何利用PostGIS批量的导出到PostgreSQL数据库中进行管理呢?...(单个数据的导入参见我上篇博文:PostGIS导入导出栅格数据) 我的实验环境如下: OS: Ubuntu 16.04 LTS PostgreSQL:9.5.5 PostGIS: 2.2...我们可以在raster2pgsql命令中使用通配符批量的导入数据到PostgreSQL数据库,命令如下: (具体参数可自行查看命令的帮助文档) raster2pgsql -s 4326 -I -C...-M ./*.tif -F -t 256x256 staging.tmean_19 | psql -h localhost -p 5432 -U postgres -d postgis_in_action...-F参数在关系表中增加名为filename的列用于保存原始文件的名称,这在我们进行Tile的合并的时候很有用。 ? 进入数据库可以查看我们导入的数据表 ?

    2.2K20

    构建自己的地理信息空间数据库及与客户端简单交互

    postgis作为新一代空间数据存储标准模型,空间地理信息数据结构规范为关系型数据库可以承载的sp模式(simple features),这样,使得之前门槛颇高的gis空间数据存储模式变得通俗易懂、简单明了...本篇作为postgis数据库的一个前期探索篇,主要简单分享下postgresql+postgis的环境配置,及其与R语言、Python的API接口调用,以及如何通过这些接口来shp、json空间地理信息数据源导入...),如果这一步失败了不用担心,只是postgis没有安装成功,可以单独下载exe文件安装。...; 5、上一步完成之后,即可通过postgis安装目录中的PostGIS 2.0 Shapefile and DBF Loader Exporter工具来手动导入本地的shp文件。...最后利用pandas封装的sqlalchemy写出函数,刚才规范过之后的表china_map写入postgis库中。

    6.1K20

    数据库导入sql文件_mysql导入sql文件命令

    四:在数据库中导出SQL脚本文件 全部记录 选择SQL脚本文件 自己勾选,点击下一步 下一步 下一步 点击开始 加载完成后点击保存 输入111(随意) 回到桌面即可看到导出的sql文件了....sql文件拖进编辑器—-可以查看相关指令 若是想看表的结果和数据 右键选择—转储SQL文件—结构和数据即可 五:查看表中的相关数据—-右键—-逆向表到模型 main中右键—逆向表到模型—可以查看所有表的相关属性...四:在数据库中导出SQL脚本文件 全部记录 选择SQL脚本文件 自己勾选,点击下一步 下一步 下一步 点击开始 加载完成后点击保存 输入111(随意) 回到桌面即可看到导出的...sql文件.sql文件拖进编辑器—-可以查看相关指令 若是想看表的结果和数据 右键选择—转储SQL文件—结构和数据即可 五:查看表中的相关数据—-右键—-逆向表到模型 main中右键...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站立刻删除。

    19.6K20

    从零开始发布一个ArcGIS Server地图服务

    3.2.3、创建postgresql数据库 在pgAdmin中新建数据库名称为sample,所有者为postgres,模板为postgis_20 ?...创建模式(从ArcGIS Catalog连接postgresql数据库导入数据时,数据库中必须有postgres模式)。...数据库管理员为超级用户postgres数据库管理员密码为自己设置的密码 地理数据库管理员密码自己设定 授权文件选择arcgis server的授权文件。 ?...6.1、直接导入 数据库连接,右键,import,可以选择导入单个或多个 ? 导入单个 ? 数据成功导入地理数据库,可以导进去的数据直接拖出来 ?...6.2、通过文件空间数据库导入 上面的方式比较快捷,但是导入失败的概率相对要大一些,所以推荐用下面的方式。 在文件夹连接,右键,创建文件空间数据库 ? 新建的文件空间数据库导入数据 ? ? ?

    4.8K71

    postgresql安装时there has been an error error. running win10下安装postgresql打开报错

    具体原因也没搞懂,莫名其妙的它就好了…其实按照报错的icacls原因,应该是权限问题,但用管理员方式运行似乎也不行 # suozhang333 # 提出需要新建windows用户postgres...然后用runas /user:postgres cmd.exe打开安装软件,大家也可以试试 # qq_37402400 # 推测大概率是路径名称不能有中文的原因,需要新建了一个windows用户...PostGIS通过向PostgreSQL添加对空间数据类型、空间索引和空间函数的支持,PostgreSQL数据库管理系统转换为空间数据库。.../details/52014737 注:创建数据库后,需要通过添加postgis插件,才可以转换为空间数据库,才可以导入空间数据,具体操作见postGIS教程 ArcGIS连接PostgreSQL...9.2/9.3/9.4版本的PostgreSQL 连接教程:https://blog.csdn.net/gisuuser/article/details/81231259 SQL查询结果写入文件

    7.8K51
    领券