上一篇                     
               
			  ArcGIS创建数据库失败怎么办
- 数据库
- 2025-06-23
- 2278
 ArcGIS新建数据库失败通常由权限不足、磁盘空间不够、路径无效或数据库实例未启动引起,请检查文件夹写入权限、磁盘容量、路径长度及特殊字符,并确保数据库服务正常运行。
 
问题场景
在 ArcGIS 中通过「新建数据库」工具(Create Enterprise Geodatabase 或 Enable Enterprise Geodatabase)创建企业级地理数据库时,操作失败并弹出错误提示(如 Error 999999、权限错误、连接失败等),以下为系统化的排查与解决方案:
核心原因与解决方案
数据库连接权限不足
- 表现:Failed to connect to the specified database、Login failed for user 'xxx'
- 原因: 
  - ArcGIS 使用的数据库账户(如 sde)缺少 sysadmin 或 创建数据库权限。
- SQL Server 身份验证模式未启用(仅允许 Windows 认证)。
 
- ArcGIS 使用的数据库账户(如 
- 解决步骤: 
  - 以 sysadmin 身份登录 SQL Server Management Studio (SSMS)。
- 为 ArcGIS 账户(如 sde)分配 sysadmin 角色(临时授权,创建后可降权)。
- 检查 SQL Server 认证模式: 
    - 右键服务器 → 属性 → 安全性 → 勾选 SQL Server and Windows Authentication mode。
 
- 重启 SQL Server 服务。
 
数据库实例未启动或端口阻塞
- 表现:Cannot connect to database instance、Network error
- 原因: 
  - SQL Server 服务未运行。
- 防火墙阻止 1433 端口(默认端口)或自定义端口。
 
- 解决步骤: 
  - 打开 SQL Server 配置管理器 → 确认 SQL Server 服务 状态为 Running。
- 开放防火墙端口: 控制面板 → Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则(TCP 1433)。 
- 若使用非默认端口,在 ArcGIS 连接时显式指定端口号(如 localhost,54321)。
 
路径或存储空间无效
- 表现:Invalid path specified、Disk space full
- 原因: 
  - 数据库文件存储路径不存在或 ArcGIS 无写入权限。
- 磁盘空间不足(需至少预留 10GB 空余空间)。
 
- 解决步骤: 
  - 手动创建存储路径(如 D:ArcGISData)。
- 右键文件夹 → 属性 → 安全 → 为 Everyone或SQL Server 服务账户添加 完全控制权限。
- 清理磁盘或更换存储位置。
 
- 手动创建存储路径(如 
数据库版本不兼容
- 表现:Unsupported database version
- 原因: ArcGIS 版本与 SQL Server 版本不匹配(如 ArcGIS 10.8 不支持 SQL Server 2019)。  
- 解决步骤: 
  - 查阅 ArcGIS 官方支持列表(见文末引用)。
- 降级数据库版本(如 SQL Server 2019 → 2016)或升级 ArcGIS 版本。
 
SDE 用户或表空间已存在
- 表现:User 'sde' already exists、Tablespace conflict
- 原因: 重复创建同名数据库或未清理残留的 SDE 用户。 
- 解决步骤: 
  - 在 SSMS 中删除已存在的 sde用户:USE master; DROP LOGIN [sde]; DROP USER [sde]; 
- 删除残留的地理数据库文件(如 .mdf、.ldf)。
 
- 在 SSMS 中删除已存在的 
进阶排查方法
检查 ArcGIS 日志文件
- 定位日志路径:C:Users<用户名>AppDataLocalESRI<ArcGIS版本>CreateEnterpriseGeodatabase.log
- 搜索关键词:ERROR、FAILED,获取具体错误代码。
测试数据库基础连接
- 打开 ArcGIS Pro → 目录面板 → 数据库 → 添加数据库连接。
- 输入实例名、账户、密码,测试连接是否成功。
- 若失败,说明问题在数据库端(权限/网络/服务)。
使用命令行工具诊断
- 以管理员身份运行 ArcGIS 命令行(如 C:Program FilesArcGISProbinPythonScriptspropy):arcpy.CreateEnterpriseGeodatabase("SQL_Server", "localhost", "sde", "密码", "DATABASE_AUTH", "sde", "sde_password", "SCHEMA_DBO")
- 命令行将返回详细错误堆栈。
专业建议(E-A-T 重点)
- 最小权限原则: 
  - 创建完成后,将 sde用户从 sysadmin 降权至 db_owner,避免安全风险。
 
- 创建完成后,将 
- 环境一致性: 确保 ArcGIS Server 与数据库服务器处于同一域或信任域,避免跨域认证问题。  
- 企业级部署规范: 由数据库管理员(DBA)预先创建空白数据库,再由 GIS 管理员启用地理数据库功能。 
- 灾难恢复预案: 
  - 定期备份 sde 用户密钥文件(<路径>etcsde_esri_sde.key),防止地理数据库损坏。
 
- 定期备份 sde 用户密钥文件(
常见错误代码速查
| 错误代码 | 原因 | 解决方案 | 
|---|---|---|
| ERROR 00098 | 实例名无效 | 使用 localhost或主机名 | 
| ERROR 00143 | 数据库版本过旧 | 升级数据库 | 
| ERROR 00205 | 存储路径无写入权限 | 修改文件夹权限 | 
| ERROR 00352 | 许可未授权企业级功能 | 检查 ArcGIS 许可级别 | 
引用说明

- ESRI 官方文档:
 ArcGIS Enterprise Geodatabase 系统要求
 创建企业级地理数据库(SQL Server)
- Microsoft SQL Server 配置指南:
 配置数据库引擎访问权限
最后建议:若上述步骤仍无法解决,请记录完整的错误信息(截图 + 日志文本),联系 ESRI 技术支持 或具备 ArcGIS 企业部署认证 的工程师协助处理。
 
  
			