MySQL 5.7 Reference Manual Including MySQL NDB Cluster 7.5 and NDB Cluster 7.6
MySQL has spatial data types that correspond to OpenGIS classes. The basis for these types is described in Section 11.4.2, “The OpenGIS Geometry Model”.
Some spatial data types hold single geometry values:
            GEOMETRY
          
            POINT
          
            LINESTRING
          
            POLYGON
          
        GEOMETRY can store geometry values of any
        type. The other single-value types (POINT,
        LINESTRING, and POLYGON)
        restrict their values to a particular geometry type.
      
The other spatial data types hold collections of values:
            MULTIPOINT
          
            MULTILINESTRING
          
            MULTIPOLYGON
          
            GEOMETRYCOLLECTION
          
        GEOMETRYCOLLECTION can store a collection of
        objects of any type. The other collection types
        (MULTIPOINT,
        MULTILINESTRING, and
        MULTIPOLYGON) restrict collection members to
        those having a particular geometry type.
      
        Example: To create a table named geom that
        has a column named g that can store values of
        any geometry type, use this statement:
      
CREATE TABLE geom (g GEOMETRY);
        SPATIAL indexes can be created on
        NOT NULL spatial columns, so if you plan to
        index the column, declare it NOT NULL:
      
CREATE TABLE geom (g GEOMETRY NOT NULL);
For other examples showing how to use spatial data types in MySQL, see Section 11.4.5, “Creating Spatial Columns”.