Você está na página 1de 10

Actividad semana 02

CUESTIONARIO
JUAN MANUEL ORNELAS FRANCO
206505457
LIC EN INFO
Creamos la siguiente instancia:
initdb -D primera -U admin -A md5 W
Contestar las siguientes preguntas:
Qu sucede si se omiten las parmetros A md5 W?
Har que se solicite el password del usuario administrador. No es necesario si se utiliza A.
Qu pasa si se omite el parmetro U admin?
El nombre de usuario puede ser cualquier nombre valido. De omitirse se tomar el nombre del
usuario de Windows.
Se puede omitir el parmetro D? Si tu respuesta es positiva explicar la accin a tomar?
Se puede indicar una trayectoria completa entre comillas, por ejemplo: c:\bases\instancia. De
no especificarse el directorio destino, ser el mismo donde se ejecuta initdb.exe. Si se omite
esta initdb tratar de tomar el valor de la variable de ambiente PGDATA.
Levantamos el servidor de PostgreSQL:
pg_ctl -D primera -o "-p 5433" -l bitacora.txt start
Contestar las siguientes preguntas:
Qu sucede si se omiten las parmetros -o "-p 5433"?
Como ya se instal una instancia de Postgres en el laboratorio y est corriendo en el puerto
por default que es 5432
Se puede omitir el parmetro -l? Para qu sirve?
Muestra las bases de datos exsitentes en la instancia
Se puede omitir el parmetro D? Si tu respuesta es positiva explicar la accin a tomar?
Equivalente a la palabra clave NOCREATEDB Explcitamente indica que el nuevo usuario no
puede crear bases de datos.
Qu otras opciones admite el parmetro -o?
-o nombre
--output = nombre del archivo
Pon toda salida de la consulta en un archivo de nombre de archivo. Esto es equivalente al
comando \ o.
Nos conectamos al servidor de PostgreSQL:
psql -U admin -d postgres -p 5433 -h localhost

Contestar las siguientes preguntas:


Qu sucede si se omiten las parmetros -U y -d?
De omitirse se tomar el nombre del usuario en Windows
Se puede omitir el parmetro -p? Para qu sirve?
-p puerto
--port = puerto
Especifica el puerto TCP o la extensin del archivo socket Unix de dominio local en el que el
servidor est a la escucha para las conexiones. El valor predeterminado es el valor de
la PGPORT variable de entorno o, si no se establece, para el puerto especificado en tiempo
de compilacin, por lo general 5432.
Se puede omitir el parmetro D? Si tu respuesta es positiva explicar las circunstancias?
De no especificarse el directorio destino, ser el mismo donde se ejecuta initdb.exe. Si se
omite esta initdb tratar de tomar el valor de la variable de ambiente PGDATA
Qu otras opciones admite el parmetro -o?
-o nombre
--output = nombre del archivo
Pon toda salida de la consulta en un archivo de nombre de archivo. Esto es equivalente al
comando \ o.
Hay otros parmetros que admita el cliente psql.exe?
Incluido tambin en el directorio bin/, es un cliente en lnea de comandos con el que nos
podemos conectar a cualquier servidor Postgres
Investigar las acciones que se tienen que tomar en caso de que el administrador olvide su
password.
Postgres utilizando el comando <psql> y podremos cambiar la contrasea, utilizando la
instruccin
SQL <ALTER USER nombre WITH PASSWORD 'password';>
postgres=# ALTER
USER
postgres
WITH
PASSWORD
'nueva_pass';
ALTER
ROLE
postgres=# \q
Investigar y describir cada uno de los mtodos de autenticacin que acepta el parmetro A
en:
initdb -D primera -U admin -A **** -W

Admite las opciones: trust, password y md5 entre otras. trust no solicita password, la opcin
password lo requiere pero no viaja encriptado; md5 es un mtodo de autentificacin
suficientemente seguro. El valor por defecto es trust
A que se conoce como variables de entorno o variables de ambiente? Explicar la forma en
que se definen en lnea de comandos y describir aquellas que puede reconocer PostgreSQL.
Una variable de entorno es aquella que almacena el sistema operativo para saber ciertos
detalles sobre un programa, por ejemplo saber cual es su ruta de ejecucin.
Variables de Entorno
Se pueden utilizar las siguientes variables de entorno para seleccionar valores de parmetros
de conexin de defecto, que sern utilizadas por PQconnectdbo PQsetdbLogin si no se
especifica ningn otro valor directamente en el cdigo que realiza la llamada. Son utilizables
para impedir codificar nombres de bases de datos en simples programas de aplicacin.

PGHOST fija el nombre del del ordenador servidor. Si se especifica una cadena de
longitud distinta de 0, se utiliza comunicacin TCP/IP. Sin un nombre de ordenador,
libpq conectar utilizando un socket del dominio Unix local.
PGPORT fija el puerto de defecto o la extensin de fichero del socket de dominio Unix
local para la comunicacin con el servidor PostgreSQL.
PGDATABASE fija el nombre de la base de datos PostgreSQL.
PGUSER fija el nombre de usuario utilizado para conectarse a la base de datos y para
autenticacin.
PGPASSWORD fija la palabra de paso utilizada si el servidor solicita autenticacin por
palabra clave.
PGREALM sets the Kerberos realm to use with PostgreSQL, if it is different from the
local realm. If PGREALM is set, PostgreSQL applications will attempt authentication
with servers for this realm and use separate ticket files to avoid conflicts with local ticket
files. This environment variable is only used if Kerberos authentication is selected by the
backend.
PGOPTIONS fija opciones de ejecucin adicionales para el serviodor PostgreSQL.
PGTTY fija el fichero o tty en el que se mostrarn los mensajes de depuracin del
servidor.

Las siguientes variables de entorno se pueden usar para especificar el comportamiento de


defecto de los usuario para cada sesin de PostgreSQL:

PGDATESTYLE Fija el estilo de la representacin de fechas y horas.


PGTZ Fija el valor de defecto para la zona horaria.

Las siguientes variables de entorno se pueden utilizar para especificar el comportamiento


interno de defecto de cada sesin de PostgreSQL:

PGGEQO fija el modo de defecto para el optimizador gentico.

Por qu se recomienda que PostgreSQL se ejecute en el sistema como un usuario limitado?


Elevar sus privilegios cuando se configura de una manera que asigne el mismo nombre para
el usuario y la base de datos. Cuando esas condiciones se cumplen, entonces esta
vulnerabilidad puede ser usado para fijar temporalmente una variable de configuracin con los
privilegios del usuario root, escribieron los responsables de PostgreSQL. Dichos usuarios que
tambin tenan la posibilidad de guardar los archivos en el sistema tambin podra ejecutar
cdigo malicioso, excepto en los casos en que la base de datos se ejecutan en el sistema
operativo SELinux.
8. Investigar los puertos utilizados por los siguientes motores de bases de datos:
PostgreSQL Puerto 5432, Puerto 5433 y Puerto 5434
MySQL el puerto por defecto que tiene que usar (3306)
MS SQL Server: Por default el servidor cliente debe conectarse por el puerto 1433
Oracle: puesto 80
DB2. El nmero de puerto predeterminado para los servidores de DB2 es 50000

Definir la tabla departamento dentro del esquema compania:


CREATE TABLE compania.departamento (
VARCHAR(25 NOT
nombred
)
UNIQUE,
NO NUL
numerod
INT
T L
NO NUL
nssgte
CHAR(9)
T L
fechainicgte DATE
);

NULL
PRIMA
RY
KEY,
REFERENCES
compania.empleado(nss),

Verificar todas las definiciones de tabla dentro del esquema compania:


\d compania.*

(comando exclusivo del cliente psql.exe)

Verificar la definicin de la tabla departamento del esquema compania:


\d compania.departamento

(exclusivo del cliente psql.exe)

Se insertan varios valores en la tabla compania.empleado. INSERT es una instruccin SQL


del DML (Lenguaje de Manejo de Datos):

INSERT INTO compania.empleado VALUES ('JOAQUIN', 'GONZALEZ', '723487645',


'1976-02-21', 'Thiers 854', 'Mexico', 'M', 27000.00, '987654321', 4);
INSERT INTO compania.empleado VALUES ('GUSTAVO', 'ALVAREZ', '528476291', '198001-11', 'Jesus Garcia 894', 'Guadalajara', 'M', 30000.00, '878672843', 3);
INSERT INTO compania.empleado VALUES ('INES', 'SANTOYO', '281655645', '1977-1004', 'Pedro Moreno 1765', 'Monterrey', 'F', 22000.00, '775833245', 6);
INSERT INTO compania.empleado VALUES ('RAMON', 'NIETO', '666884444', '1952-0915', 'Independencia 35', 'Monterrey', 'M', 38000.00, '333445555', 5);

INSERT INTO compania.empleado VALUES ('JAIME', 'BOTELLO', '888665555', '1937-1110', 'Mariano Escobedo 450', 'Mexico', 'M', 55000.00, NULL, 1);
INSERT INTO compania.empleado VALUES ('GUILLERMO', 'BARBA', '791783463', '197606-10', 'Paseo Industrial 3872', 'Monterrey', 'M', 14000.00, '128763542', 3);
INSERT INTO compania.empleado VALUES ('JOSE', 'SILVA', '123456789', '1955-01-09',
'Paseo Camelinas 731', 'Morelia', 'M', 42000.00, NULL, 7);
INSERT INTO compania.empleado VALUES ('SALVADOR', 'VAZQUEZ', '232651876',
'1971-07-05', 'Priv. de los Sada', 'Monterrey', 'M', 17000.00, '918264845', 3);
INSERT INTO compania.empleado VALUES ('CORNELIO', 'REYES', '749273822', '198101-15', 'Laureles 2745', 'Morelia', 'M', 25000.00, '245892763', 5);
INSERT INTO compania.empleado VALUES ('LORENA', 'HERRERA', '552981673', '198812-15', 'Guadalupe 854', 'Monterrey', 'F', 21000.00, '918264845', 3);
INSERT INTO compania.empleado VALUES ('RAFAEL', 'SALGADO', '927583746', '197905-05', 'Camichines 1763', 'Morelia', 'M', 17000.00, '245892763', 5);
INSERT INTO compania.empleado VALUES ('MARISA', 'RAZO', '492738495', '1975-0907', 'Rumorosa 35', 'Morelia', 'F', 25000.00, '245892763', 5);
INSERT INTO compania.empleado VALUES ('JORGE', 'FLORES', '348726591', '1971-1119', 'Obregon 284', 'Morelia', 'M', 18000.00, '626491624', 7);
INSERT INTO compania.empleado VALUES ('JAVIER', 'MERCADO', '372769928', '196209-18', 'Av. Vallarta 3456', 'Guadalajara', 'M', 17000.00, '775833245', 6);
INSERT INTO compania.empleado VALUES ('ALICIA', 'ZAPATA', '999887777', '1958-0719', 'Priv. Castillo 3321', 'Mexico', 'F', 12000.00, '987654321', 4);
INSERT INTO compania.empleado VALUES ('GUADALUPE', 'GALINDO', '774592713',
'1968-01-22', 'Lope de Vega 800', 'Guadalajara', 'F', 14000.00, '528476291', 3);
INSERT INTO compania.empleado VALUES ('FRANCISCO', 'ALCALA', '459827165',
'1981-09-29', 'Guadalupe Victoria 472', 'Morelia', 'M', 16000.00, '626491624', 7);
INSERT INTO compania.empleado VALUES ('PEDRO', 'MACIAS', '792648162', '1976-1120', 'Juarez 1000', 'Morelia', 'M', 19000.00, '626491624', 7);
INSERT INTO compania.empleado VALUES ('IRMA', 'GALLEGOS', '567324572', '195908-02', 'Lazaro Cardenas 1763', 'Mexico', 'F', 14000.00, '775833245', 6);

INSERT INTO compania.empleado VALUES ('FEDERICO', 'VIZCARRA', '333445555',


'1945-12-08', 'Valle 638', 'Monterrey', 'M', 45000.00, NULL, 5);
INSERT INTO compania.empleado VALUES ('GERARDO', 'CEJA', '135628469', '1979-0426', 'Hidalgo 2020', 'Guadalajara', 'M', 19000.00, '775833245', 6);
INSERT INTO compania.empleado VALUES ('JAIME', 'ORTEGA', '978675645', '1980-0918', 'Obelisco 1856', 'Mexico', 'M', 17000.00, '987654321', 4);
INSERT INTO compania.empleado VALUES ('CARMEN', 'CORONA', '647758129', '196210-23', 'Paseo de la Reforma 2004', 'Mexico', 'F', 12000.00, '466557975', 2);
INSERT INTO compania.empleado VALUES ('ISABEL', 'JIMENEZ', '878672843', '1977-0608', 'Juarez 245', 'Guadalajara', 'F', 52000.00, NULL, 3);
INSERT INTO compania.empleado VALUES ('MIGUEL', 'SANTANA', '156675267', '196912-11', 'Independencia 2387', 'Mexico', 'M', 20000.00, '466557975', 2);
INSERT INTO compania.empleado VALUES ('RODRIGO', 'SANTANA', '198347767',
'1972-05-11', 'Insurgentes 734', 'Mexico', 'M', 17000.00, '466557975', 2);
INSERT INTO compania.empleado VALUES ('GRISELDA', 'JIMENEZ', '834572889', '198104-03', 'Av. Tacubaya 473', 'Mexico', 'F', 27000.00, '888665555', 1);
INSERT INTO compania.empleado VALUES ('RICARDO', 'FERRERO', '592745726',
'1981-11-17', 'Sevilla 56', 'Mexico', 'M', 17000.00, '888665555', 1);
INSERT INTO compania.empleado VALUES ('TERESA', 'MADRIGAL', '864523419', '198310-25', 'Priv. Magnolia 1678', 'Morelia', 'F', 16000.00, '487261987', 7);
INSERT INTO compania.empleado VALUES ('JAVIER', 'LOPEZ', '918264845', '1985-1215', 'Revolucion 376', 'Monterrey', 'M', 30000.00, '878672843', 3);
INSERT INTO compania.empleado VALUES ('AHMED', 'JABBAR', '987987987', '1959-0329', 'Dallas 980', 'Mexico', 'M', 35000.00, '987654321', 4);
INSERT INTO compania.empleado VALUES ('ENRIQUE', 'RAMOS', '128763542', '198002-05', 'Alfonso Reyes 456', 'Monterrey', 'M', 30000.00, '878672843', 3);
INSERT INTO compania.empleado VALUES ('PATRICIA', 'GONZALEZ', '775833245',
'1966-07-01', 'Paseo de los Orfebres 854', 'Mexico', 'F', 29000.00, NULL, 6);
INSERT INTO compania.empleado VALUES ('MARIO', 'PADILLA', '245892763', '1966-1220', 'Aldama 765', 'Morelia', 'M', 38000.00, '333445555', 5);

INSERT INTO compania.empleado VALUES ('JUAN', 'GONZALEZ', '482645631', '196804-30', 'Rio Rebelde 782', 'Monterrey', 'M', 17000.00, '128763542', 3);
INSERT INTO compania.empleado VALUES ('LORENZO', 'BARRAGAN', '192856472',
'1978-10-30', 'Valle de las Magnolias 827', 'Monterrey', 'M', 15000.00, '128763542', 3);
INSERT INTO compania.empleado VALUES ('ESTHER', 'SERRANO', '862938865', '195809-20', 'Orestes 1458', 'Monterrey', 'F', 16000.00, '128763542', 3);
INSERT INTO compania.empleado VALUES ('HUGO', 'GOMEZ', '423675975', '1956-0818', 'Americas 739', 'Monterrey', 'M', 22000.00, '666884444', 5);
INSERT INTO compania.empleado VALUES ('JULIAN', 'SOSA', '675645340', '1969-07-16',
'Madero 492', 'Morelia', 'M', 22000.00, '487261987', 7);
INSERT INTO compania.empleado VALUES ('RUBEN', 'SANCHEZ', '672839456', '196902-22', 'Pedro Garza 3456', 'Monterrey', 'M', 27000.00, '775833245', 6);
INSERT INTO compania.empleado VALUES ('FERNANDA', 'GUTIERREZ', '472891286',
'1955-04-11', 'Av. Guadalupe 3654', 'Guadalajara', 'F', 30000.00, '878672843', 3);
INSERT INTO compania.empleado VALUES ('LUZ', 'GOMEZ', '466557975', '1959-12-28',
'Ciceron 739', 'Mexico', 'F', 34000.00, NULL, 2);
INSERT INTO compania.empleado VALUES ('MARIA', 'HERNANDEZ', '867253671',
'1975-03-25', 'Allende 345', 'Monterrey', 'F', 19000.00, '666884444', 5);
INSERT INTO compania.empleado VALUES ('MARTIN', 'ANDERSON', '482948739',
'1981-03-13', 'Argentina 133', 'Mexico', 'M', 24000.00, '888665555', 1);
INSERT INTO compania.empleado VALUES ('ADRIANA', 'TORRES', '183612935', '196804-30', 'San Juan de los Garza', 'Monterrey', 'F', 17000.00, '918264845', 3);
INSERT INTO compania.empleado VALUES ('ANGEL', 'ZAMBRANO', '137845983', '196410-17', 'Belisario Dominguez 2563', 'Guadalajara', 'M', 19000.00, '472891286', 3);
INSERT INTO compania.empleado VALUES ('PABLO', 'CASARRUBIAS', '659327184',
'1974-08-01', 'Plutarco Elias Calles 367', 'Guadalajara', 'M', 17000.00, '472891286', 3);
INSERT INTO compania.empleado VALUES ('DANIEL', 'VAZQUEZ', '298234874', '196812-30', 'Industria 345', 'Guadalajara', 'M', 15000.00, '472891286', 3);
INSERT INTO compania.empleado VALUES ('JOSEFA', 'ESPARZA', '378445358', '196207-31', 'Cancion 1450', 'Monterrey', 'F', 25000.00, '666884444', 5);

INSERT INTO compania.empleado VALUES ('LETICIA', 'RAMIREZ', '786459371', '197802-07', 'Rio Churubusco 2345', 'Mexico', 'F', 11000.00, '775833245', 6);
INSERT INTO compania.empleado VALUES ('MARTHA', 'ORTEGA', '973624168', '198409-12', 'Sierra Madre 245', 'Guadalajara', 'F', 15000.00, '528476291', 3);
INSERT INTO compania.empleado VALUES ('ISABEL', 'RODRIGUEZ', '626491624',
'1962-10-21', 'Morelos 625', 'Morelia', 'F', 27000.00, '123456789', 7);
INSERT INTO compania.empleado VALUES ('PATRICIA', 'BERMUDEZ', '239812752',
'1959-07-27', 'Prol. Alcalde 5689', 'Guadalajara', 'F', 17000.00, '472891286', 3);
INSERT INTO compania.empleado VALUES ('JAZMIN', 'VALDEZ', '987654321', '1941-0620', 'Guthemberg 291', 'Mexico', 'F', 48000.00, NULL, 4);
INSERT INTO compania.empleado VALUES ('FERNANDO', 'ROBLEDO', '487261987',
'1979-05-13', 'Blv. Lazaro Cardenas', 'Morelia', 'M', 27000.00, '123456789', 7);
INSERT INTO compania.empleado VALUES ('LUIS', 'ROBLES', '825463817', '1989-02-06',
'Prol. Alcalde 3862', 'Guadalajara', 'M', 13000.00, '528476291', 3);

Se modifica la tabla empleado para agregar una llave fornea que haga referencia a la llave
primaria de la misma tabla. Se trata de una relacin recursiva. ALTER es una instruccin SQL
del DDL:
ALTER TABLE compania.empleado ADD FOREIGN KEY (nsssuper)
REFERENCES compania.empleado(nss);

Se insertan varios registros en la tabla departamento. INSERT es una instruccin SQL del
DML (Lenguaje de Manejo de Datos):

INSERT INTO compania.departamento VALUES ('INVESTIGACION', 5, '333445555',


'1978-05-22');
INSERT INTO compania.departamento VALUES ('ADMINISTRACION', 4, '987654321',
'1985-07-01');
INSERT INTO compania.departamento VALUES ('ESTUDIOS AMBIENTALES', 7,
'123456789', '2000-05-11');
INSERT INTO compania.departamento VALUES ('DIRECCION', 1, '888665555', '1971-0619');

INSERT INTO compania.departamento VALUES ('CONTABILIDAD', 2, '466557975', '200403-20');


INSERT INTO compania.departamento VALUES ('PRODUCCION', 3, '878672843', '200510-25');
INSERT INTO compania.departamento VALUES ('PERSONAL', 6, '775833245', '2006-0101');

Se modifica la tabla empleado para definir al atributo como llave fornea que apunta al
atributo numerod de la tabla departamento:

ALTER

TABLE

compania.empleado ADD FOREIGN KEY (nd)


REFERENCES compania.departamento(numerod);

Se comprueba que los datos han sido almacenados. SELECT es una instruccin SQL del
DML (Lenguaje de Manejo de Datos):
SELECT * FROM compania.empleado;
SELECT * FROM compania.departamento;

Salimos del cliente psql:


\q

(comando exclusivo del cliente psql.exe)

Detenemos el servidor:
pg_ctl -D segunda stop

Você também pode gostar