Documente Academic
Documente Profesional
Documente Cultură
Airton Lastori
airton.lastori@oracle.com
10-abr-2013
1 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
@MySQLBR
facebook.com/MySQLBR
MySQLBR
meetup.com/MySQL-BR
mysql.com/customers
5 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
mysql.com/customers
6 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
2008
2009
2010
2013
MySQL Database Community Server MySQL Cluster MySQL Workbench MySQL Connectors MySQL Proxy Documentao no GPL Forums, Lists, Bugs, Blogs
10 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
Comunidade
PHP Perl Ruby TCL Eiffel
dev.mysql.com/doc/refman/5.5/en/connectors-apis.html
11 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
Oracle Product Certifications/Integrations MySQL Enterprise Monitor/Query Analyzer MySQL Enterprise Backup
MySQL Workbench
InnoDB
Linha Assncrona ou Semi-sncrona a partir da v5.6 Dados e ndices somente Tipos de Dados 64TB
Archive
Tabela Assncrona ou Semi-sncrona somente Tipos de Dados Ilimitado
NDB Cluster
Linha Sncrona, Multimaster a partir da v7.3 Dados e ndices somente Tipos de Dados 384EB
dev.mysql.com/doc/refman/5.5/en/storage-engines.html
14 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
15
OpenGIS
Simple Features Specification for SQL
Modelo conceitual para dados espaciais / geogrficos prope extenses para SGBDs SQL padronizado pelo Open Geospatial Consortium inclui SQL with Geometry Types, estendendo a linguagem
MySQL aderente ao OpenGIS implementa um subconjunto dos SQL with Geometry Types colunas podem possuir os Tipos Geomtricos do OpenGIS tambm esto disponveis funes geomtricas para anlise
www.opengis.org/docs/99-049.pdf
16 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
Terminologia
OpenGIS Simple Features Specification for SQL
geographic feature ou geospatial feature ou geometry algo com uma localizao no mundo definido e representado por um ponto ou agregado de pontos pode ser uma entity, space, definable location entity uma montanha, um lago, uma cidade etc space um distrito municipal, os trpicos etc definable location um cruzamento entre ruas, etc
17 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
18
MultiPoint
Em um mapa mundi, poderia representar uma cadeia de pequenas ilhas que formam um arquiplogo. Em um mapa municipal, poderia representar pontos de paradas de uma linha de nibus. Em um mapa nacional, poderia representar rodovias federais ou rios conectados.
Em um mapa nacional, poderia representar lagos pertencentes ao mesmo sistema hdrico.
MultiLineString
MultiPolygon
19
GEOMETRY pode armazenar geometrias de qualquer tipo POINT LINESTRING POLYGON GEOMETRYCOLLECTION pode armazenar colees de todos tipos MULTIPOINT MULTILINESTRING MULTIPOLYGON
Insert Information Protection Policy Classification from Slide 12
mapamundi
cidade
23
mapamundi
cidade rio
24
mapamundi
geometria
ALTER TABLE mapamundi DROP rio; ALTER TABLE mapamundi ADD geometria GEOMETRY; ALTER TABLE mapamundi DROP cidade;
25
Criando objetos com funes especficas do MySQL Point(), LineString(), Polygon() GeometryCollection(), MultiPoint(), MultiLineString(), MultiPolygon()
26 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
geometria 1 POINT(1 1)
ou tambm
SET @g = 'POINT(1 1)'; INSERT INTO mapamundi VALUES ( GeomFromText(@g) );
27 Copyright 2012, Oracle and/or its affiliates. All rights reserved.
...ou ainda
INSERT INTO mapamundi VALUES( Point(1,1) );
mapamundi
geometria
28
mapamundi
geometria 1 POINT(1 1)
29
SET @g = 'LINESTRING(0 0,1 1,2 2)'; INSERT INTO mapamundi VALUES ( GeomFromText(@g) );
30
SET @g = 'POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7, 5 5))'; INSERT INTO mapamundi VALUES (GeomFromText(@g));
31
32
34
apenas deixe o trabalho de selecionar o ndice para o Optimizer! Use o comando EXPLAIN para confirmar se o ndice utilizado.
35 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
36
37
Como comear
39
40
mysql.com/downloads/mysql
41 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
Cliente-Servidor
Client
mysql / mysql.exe
Server
mysqld / mysqld.exe
42
43
Parar:
/usr/local/mysql/bin> mysqladmin shutdown
dev.mysql.com/doc/refman/5.5/en/mysqld-safe.html
44 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
Primeira conexo
C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql -uroot -p Enter password: **** Welcome to the MySQL monitor. Your MySQL connection id is 8 Server version: 5.6.11 MySQL Community Server (GPL) Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its Commands end with ; or \g.
45
46
47
Cliente-Servidor
App + Connector
JDBC, ODBC, .Net, PHP, Python, Perl, Ruby, Native C API
Server
mysqld / mysqld.exe
48
Mos obra!
Hello World
...em Java
49
Confira:
C:\>set CLASSPATH
CLASSPATH=.;C:\Program Files (x86)\Java\jre6\lib\ext\QTJava.zip;C:\Program Files\MySQL\mysql-connector-java-5.1.22\mysql-connector-java-5.1.22-bin.jar
50
HelloMysql.java 1/2
import java.sql.*;
try {
Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/mysql"; String usuario = "root"; String senha = "root"; Connection con = DriverManager.getConnection(url, usuario, senha); System.out.println("URL: " + url); System.out.println("Connection: " + con);
Continua
51 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12
HelloMysql.java 2/2
Statement stmt = con.createStatement(); ResultSet rs; //objeto ResultSet //objeto Statement rs = stmt.executeQuery("SELECT * FROM world.country"); System.out.println("Ola mundo!"); while(rs.next()){ String nomePais = rs.getString("Name"); System.out.print(nomePais + ", ");
}//end while
con.close(); } catch( Exception e ) {
e.printStackTrace();
}//end catch }//end main
PRONTO!
java HelloMysql
C:\tutorial>javac HelloMysql.java
C:\tutorial>java HelloMysql
Tentando conectar ao MySQL... URL: jdbc:mysql://localhost:3306/mysql Connection: com.mysql.jdbc.JDBC4Connection@ed07f45
Ola mundo!
Aruba, Afghanistan, Angola, Anguilla, Albania, Andorra, Netherlands Antilles, Un ited Arab Emirates, Argentina, Armenia, American Samoa, Antarctica, French South ern territories, Antigua and Barbuda, Australia, Austria, Azerbaijan, Burundi, B elgium, Benin, Burkina Faso, Bangladesh, Bulgaria, Bahrain, Bahamas, Bosnia and Herzegovina, Belarus, Belize, Bermuda, Bolivia, Brazil, Barbados, Brunei, Bhutan ietnam, Vanuatu, Wallis and Futuna, Samoa, Yemen, Yugoslavia, South Africa, Zamb ia, Zimbabwe,
53
Sumrio
O MySQL o banco de dados open source mais popular do mundo, usado em grandes sites, aplicaes mobile, embarcadas e sistemas de informaes geogrficas.
Possui amplo suporte ao modelo OpenGIS, principalmente no Storage Engine MyISAM. Instale e comece a usar em menos de 15min. Use e abuse da documentao!
55
@MySQLBR
facebook.com/MySQLBR
Obrigado!
meetup.com/MySQL-BR
56
MySQL Spatial
Perguntas?
57