ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

Create a geodatabase in Informix

Standard または Advancedのライセンスで利用可能。

  • Install and configure Informix
  • Configure clients
  • Create a geodatabase

Use the Enable Enterprise Geodatabase geoprocessing tool or a Python script to create a geodatabase in an IBM Informix database.

The following sections tell you how to

  • Set up Informix to store a geodatabase.
  • Configure an ArcGIS client to connect to Informix.
  • Create a geodatabase in an Informix database.

Install and configure Informix

Before you can run the Enable Enterprise Geodatabase tool or script to create a geodatabase in Informix, you must first install and configure the Informix database management system. Check the ArcGIS system requirements before you set up a geodatabase to be sure the database, ArcGIS, and hardware combinations you want to use are supported.

You should follow the instructions provided by IBM to install and configure your Informix instance. Then follow these steps to configure a database and login to use for your geodatabase.

  1. Create an operating system login named sde on the Informix server.

    You will connect to the database with the sde login to create a geodatabase.

  2. Make the following changes to the Informix ONCONFIG file:
    1. Uncomment the VPCLASS jvp,num=1 parameter.

      This allows the sde.retrieve_guid() function to be created in the geodatabase, which is required for replication, off-line map use, and SQL edits of tables containing global ID or GUID columns. This setting is also needed for nonversioned archiving workflows.

    2. Set the USEOSTIME parameter to 1 to use subsecond precision for time values.

      Setting this parameter allows you to implement editing workflows that require editing nonversioned data while disconnected from the network.

    3. Restart Informix to implement the changes you made to the ONCONFIG file.
  3. Create a database in the Informix instance and configure storage spaces.

    The Informix database you use for your geodatabase must have the following:

    • At least 100 MB of free space available to store geodatabase system objects
    • Logging or buffered logging enabled on the database

      ArcGIS sets transactions, and you cannot insert data unless the database has been created as either logged or buffered logged. You can establish this during creation of the database through dbaccess, or use the ontape command.

      ontape -s -B <database name>

    • Logging enabled for smart large object spaces

      All smart large object spaces (sbspaces) used for spatial data must also be logged. Logging is not the default for smart large objects when created. However, to ensure transaction logging to enable rollbacks and protect all spatial data, you must turn logging on for all smart blobs. Run the following command as the informix user to turn on logging for a smart large object sbspace:

      onspaces -ch SBLOBspace -DF LOGGING=ON

  4. Grant the sde login the EXTEND role and RESOURCE permissions in the database.

Next, set up an ArcGIS client from which you will connect and create a geodatabase in the Informix database.

Configure clients

You can run a Python script from ArcGIS Desktop (Desktop Standard or Desktop Advanced), ArcGIS Engine Runtime with the Geodatabase Update extension, or ArcGIS Server (Standard or Advanced) to create a geodatabase. If you want to run the Enable Enterprise Geodatabase geoprocessing tool instead of a script, use ArcGIS Desktop.

注意:

You need an ArcGIS Server keycodes file to authorize your geodatabase in the next section. Even if you do not run a Python script from an ArcGIS Server machine to create the geodatabase, you must install and authorize ArcGIS Server to get the keycodes file.

  1. Install the ArcGIS client you want to use for geodatabase creation.

    Follow the instructions provided in the software installation guides.

  2. In most cases, your ArcGIS client will be installed on a different computer than the Informix server; therefore, install and configure an Informix client on the ArcGIS client computer.

    The Informix Connect (IConnect) client can be downloaded from My Esri. See the Informix documentation for instructions to install the client. If you are installing the Informix client to run with a 32-bit ArcGIS client, install the 32-bit Informix IConnect client. If you are installing the Informix client to run with ArcGIS Server, install the 64-bit IConnect client.

  3. If your ArcGIS client is installed on a Windows computer, register the Informix server via SetNet32.
  4. You can connect from ArcGIS to an Informix database using a DSNless connection string. However, if you want to use an ODBC data source name to connect instead, you must configure the data source name. See Set up an ODBC data source for Informix for instructions.

Now you can create a geodatabase.

Create a geodatabase

Use one of the following methods to create a geodatabase in your Informix database:

Use the Enable Enterprise Geodatabase tool

If you installed and configured ArcGIS Desktop to connect to your Informix database, you can run the Enable Enterprise Geodatabase tool.

  1. Start ArcMap or ArcCatalog.
  2. Connect to the Informix database from the Catalog tree. Connect with the sde login.

    Be sure to save the sde user's password on the Database Connection dialog box.

  3. Right-click the database connection and click Enable Geodatabase.

    The Enable Enterprise Geodatabase tool opens.

  4. Add the database connection file for your Informix database to the Input Database text box.
  5. Browse to the ArcGIS Server keycodes file that was created when you authorized ArcGIS Server and add it to the Authorization File text box.

    When you use the wizard to authorize ArcGIS Server, a keycodes file is written to the server where the software is installed. If you authorized ArcGIS Server on a Linux box, the file was created in /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen. If you authorized on a Windows server, the file was created in Program Files\ESRI\License<release>\sysgen. Copy this file to a location you can access from the Enable Enterprise Geodatabase tool. If you have not already done so, authorize ArcGIS Server to create this file.

  6. Click OK to run the tool.

    ジオデータベース作成に関連するメッセージは、sde_setup.log ファイルにあります。このファイルは、ツールを実行したコンピューター上の %TEMP% 変数で指定されたディレクトリに作成されます。ジオデータベースの作成時に問題が発生した場合は、このファイルを確認して問題を解決します。

A geodatabase is created in your Informix database.

Next, create users to load data into the geodatabase. For instructions on creating users, see the IBM Informix Information Center documentation.

Use a Python script

You can run a Python script from an ArcGIS Desktop (Desktop Standard or Desktop Advanced), ArcGIS Server, or ArcGIS Engine (with the Geodatabase Update extension) client machine to create a geodatabase in an Informix database.

Follow these steps to run a Python script for geodatabase creation in an Informix database:

  1. Create a text file on the ArcGIS client machine and copy the following script into the file.

    """
    Name: enable_enterprise_gdb.py
    Description: Provide connection information to an enterprise database
    and enable enterprise geodatabase.
    Type enable_enterprise_gdb.py -h or enable_enterprise_gdb.py --help for usage
    """
    
    # Import system modules
    import arcpy, os, optparse, sys
    
    
    # Define usage and version
    parser = optparse.OptionParser(usage = "usage: %prog [Options]", version="%prog 1.0 for " + arcpy.GetInstallInfo()['Version'] )
    
    #Define help and options
    parser.add_option ("--DBMS", dest="Database_type", type="choice", choices=['SQLSERVER', 'ORACLE', 'POSTGRESQL', 'DB2','INFORMIX','DB2ZOS', ''], default="", help="Type of enterprise DBMS:  SQLSERVER, ORACLE, POSTGRESQL, DB2, INFORMIX, or DB2ZOS.")
    parser.add_option ("-i", dest="Instance", type="string", default="", help="DBMS instance name")
    parser.add_option ("--auth", dest="account_authentication", type ="choice", choices=['DATABASE_AUTH', 'OPERATING_SYSTEM_AUTH'], default='DATABASE_AUTH', help="Authentication type options (case-sensitive):  DATABASE_AUTH, OPERATING_SYSTEM_AUTH.  Default=DATABASE_AUTH")
    parser.add_option ("-u", dest="User", type="string", default="", help="Geodatabase administrator user name")
    parser.add_option ("-p", dest="Password", type="string", default="", help="Geodatabase  administrator password")
    parser.add_option ("-D", dest="Database", type="string", default="none", help="Database name:  Not required for Oracle")
    parser.add_option ("-l", dest="Authorization_file", type="string", default="", help="Full path and name of authorization file")
    
    
    # Check if value entered for option
    try:
    	(options, args) = parser.parse_args()
    
    	
    #Check if no system arguments (options) entered
    	if len(sys.argv) == 1:
    		print "%s: error: %s\n" % (sys.argv[0], "No command options given")
    		parser.print_help()
    		sys.exit(3)
    	
    
    	#Usage parameters for spatial database connection
    	database_type = options.Database_type.upper()
    	instance = options.Instance
    	account_authentication = options.account_authentication.upper()
    	username = options.User.lower() 
    	password = options.Password	
    	database = options.Database.lower()
    	license = options.Authorization_file
    
    
    	if( database_type ==""):	
    		print " \n%s: error: \n%s\n" % (sys.argv[0], "DBMS type (--DBMS) must be specified.")
    		parser.print_help()
    		sys.exit(3)		
    		
    	if (license == ""):
    		print " \n%s: error: \n%s\n" % (sys.argv[0], "Authorization file (-l) must be specified.")
    		parser.print_help()
    		sys.exit(3)
    
    	if (database_type == "SQLSERVER"):
    		database_type = "SQL_SERVER"
    		
    	# Get the current product license
    	product_license=arcpy.ProductInfo()
    	
    	if (license == ""):
    		print " \n%s: error: %s\n" % (sys.argv[0], "Authorization file (-l) must be specified.")
    		parser.print_help()
    		sys.exit(3)
    	
    	# Checks required license level
    	if product_license.upper() == "ARCVIEW" or product_license.upper() == 'ENGINE':
    		print "\n" + product_license + " license found!" + "  Enabling enterprise geodatabase functionality requires an ArcGIS Desktop Standard or Advanced, ArcGIS Engine with the Geodatabase Update extension, or ArcGIS Server license."
    		sys.exit("Re-authorize ArcGIS before enabling an enterprise geodatabase.")
    	else:
    		print "\n" + product_license + " license available!  Continuing to enable..."
    		arcpy.AddMessage("+++++++++")
    	
    	# Local variables
    	instance_temp = instance.replace("\\","_")
    	instance_temp = instance_temp.replace("/","_")
    	instance_temp = instance_temp.replace(":","_")
    	Conn_File_NameT = instance_temp + "_" + database + "_" + username    
    	
    	if os.environ.get("TEMP") == None:
    		temp = "c:\\temp"	
    	else:
    		temp = os.environ.get("TEMP")
    	
    	if os.environ.get("TMP") == None:
    		temp = "/usr/tmp"		
    	else:
    		temp = os.environ.get("TMP")  
    	
    
    	Connection_File_Name = Conn_File_NameT + ".sde"
    	Connection_File_Name_full_path = temp + os.sep + Conn_File_NameT + ".sde"
    	
    	# Check for the .sde file and delete it if present
    	arcpy.env.overwriteOutput=True
    	if os.path.exists(Connection_File_Name_full_path):
    		os.remove(Connection_File_Name_full_path)
    	
    	print "\nCreating Database Connection File...\n"	
    	# Process: Create Database Connection File...
    	# Usage:  out_file_location, out_file_name, DBMS_TYPE, instnace, database, account_authentication, username, password, save_username_password(must be true)
    	arcpy.CreateDatabaseConnection_management(out_folder_path=temp, out_name=Connection_File_Name, database_platform=database_type, instance=instance, database=database, account_authentication=account_authentication, username=username, password=password, save_user_pass="TRUE")
            for i in range(arcpy.GetMessageCount()):
    		if "000565" in arcpy.GetMessage(i):   #Check if database connection was successful
    			arcpy.AddReturnMessage(i)
    			arcpy.AddMessage("\n+++++++++")
    			arcpy.AddMessage("Exiting!!")
    			arcpy.AddMessage("+++++++++\n")
    			sys.exit(3)            
    		else:
    			arcpy.AddReturnMessage(i)
    			arcpy.AddMessage("+++++++++\n")
    	
    	
    	# Process: Enable geodatabase...
    	try:
    		print "Enabling Enterprise Geodatabase...\n"
    		arcpy.EnableEnterpriseGeodatabase_management(input_database=Connection_File_Name_full_path, authorization_file=license)
    		for i in range(arcpy.GetMessageCount()):
    			arcpy.AddReturnMessage(i)
    		arcpy.AddMessage("+++++++++\n")
    	except:
    		for i in range(arcpy.GetMessageCount()):
    			arcpy.AddReturnMessage(i)
    			
    	if os.path.exists(Connection_File_Name_full_path):
    		os.remove(Connection_File_Name_full_path)
    			
    #Check if no value entered for option	
    except SystemExit as e:
    	if e.code == 2:
    		parser.usage = ""
    		print "\n"
    		parser.print_help() 
    		parser.exit(2)
    

  2. Save the file with a .py extension.
  3. Run the script, providing options and information specific to your site.

    In the following example run from a Windows machine, the file enable_gdb.py is run for database spdata on instance idsprod. The connection is made as the sde login with password Tgdbst@rtsh3r3. A keycodes file in the default ArcGIS Server location is specified to authorize the geodatabase.

    enable_gdb.py --DBMS INFORMIX -i idsprod --auth DATABASE_AUTH 
    -u sde -p Tgdbst@rtsh3r3 -D spdata -l '\\Program Files\ESRI\License\sysgen\keycodes'
    

    This is an example of running the script on a Linux machine:

    /enable_gdb.py --DBMS INFORMIX -i idsprod --auth DATABASE_AUTH 
    -u sde -p Tgdbst@rtsh3r3 -D spdata -l '/usr/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License/sysgen/keycodes'
    
    ヒント:

    構文ヘルプを取得するには、コマンド プロンプトに「-h」または「--help」と入力します。

    ジオデータベース作成に関連するメッセージは、sde_setup.log ファイルにあります。このファイルは、Python スクリプトを実行したコンピューター上の TEMP 変数または TMP 変数で指定されたディレクトリに作成されます。ジオデータベースの作成時に問題が発生した場合は、このファイルを確認して問題を解決します。

A geodatabase is created in your Informix database.

Next, create users to load data into the geodatabase. For instructions on creating users, see the IBM Informix Information Center documentation.

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2019 Esri. | プライバシー | リーガル