martes, 30 de junio de 2015

Crear usuarios en postgres

Configuración de Postgresql
Lo primero que se tiene que hacer es cambiarle la contraseña al usuario ‘postgres’ que se crea luego de haber instalado el paquete:
# passwd postgres

Acceda a la consola de administración de PostgreSQL para cambiar la contraseña del usuario ‘postgres’ con los siguientes comandos:
# su postgres
postgres@nombre_maquina:/directorio$ psql -U postgres
postgres=# ALTER ROLE postgres PASSWORD 'CONTRASENA_DEL_USUARIO';

Ejemplo:
postgres=# ALTER ROLE postgres PASSWORD '123456';

Donde ‘postgres’ es el nombre del usuario al cual debe cambiar la contraseña ‘CONTRASENA_DEL_USUARIO’ por la que estableció previamente y luego salga de la sesión, ejecutando los siguientes comandos:
postgres=# \q


Descomprimir archivos en Linux desde la consola

En modo gráfico tenemos el gestor de archivadores para facilitarnos la vida. Pero, ¿cómo tratar con archivos comprimidos o empaquetados como los tgz, tar, bz2 o rar en la consola?

tar

Se trata de un archivo que combina varios archivos en uno, no hay compresión de datos. Para extraer el contenido usamos el comando tar con los flags x (extract, extraer) y f (file, desde un archivo), y opcionalmente v (verbose) para mostrar por pantalla el proceso o vv para mostrar no solo los archivos y carpetas creadas, sino información sobre estas.

tar xvf archivo.tar

gz

Se trata de un archivo comprimido con gzip. Para descomprimir utilizamos el comando gzip con el flag -d (descomprimir) o bien el comando gunzip, que no es más que un enlace a gzip.

gunzip archivo.gz
gzip -d archivo.gz

tgz, tar.gz

Un archivo empaquetado con tar y comprimido con gunzip. Se descomprime de la misma forma que los tar, añadiendo el flag z para indicarle que use gzip para descomprimir.

tar xvzf archivo.tar.gz

bz2

Archivo comprimido con bzip2. Para descomprimir se usa el comando bzip2 con el flag -d (descomprimir) o bien el comando bunzip2, que no es más que un enlace a bzip2.

bunzip2 archivo.bz2
bzip2 -d archivo.bz2

tar.bz2

Similar a los archivos tar.gz, pero se usó bzip2 para comprimirlo. Para descomprimir se usa también tar, con el flag j en lugar de z:

tar xvjf archivo.tar.bz2

zip

Archivo comprimido con zip. Se descomprime usando el comando unzip:

unzip archivo.zip

rar

Formato propietario de RarLab, creadores del famoso Winrar. Normalmente el comando rar no está instalado en el sistema

sudo aptitude install rar

Se descomprime con el flag -x (eXtract, extraer)

rar -x archivo.rar

martes, 23 de junio de 2015

Como cambiar la codificación de una Base de Datos en Postgres

Entramos como superusuario:
ubuntu@localhost:~$ sudo -i
(Colocamos la contraseña del usuario)
Una vez somos superusuario, nos cambiamos al usuario postgres (Quien es superusuario de la base de datos PostgreSQL):
root@localhost:~# su postgres

Ahora, para verificar nuestra codificación de bases de datos, le diremos que nos muestre la lista de bases de datos:
postgres@localhost:~$ psql -l
(Nos listará las bases de datos)

Entraremos al psql:
postgres@localhost:~$ psql

Esta es la parte importante; cambiar la codificación:
postgres=# update pg_database set encoding=6 where datname='template0';
(Le decimos encoding 6 debido a una tabla que existe por ahí, en PostgreSQL y nos dice que el 6 corresponde a UTF-8)

Ahora, cambiemos la columna Collation:
postgres=# update pg_database set datcollate='en_US.UTF-8' where datname='template0';

Por último, cambiemos la columna Ctype:
postgres=# update pg_database set datctype='en_US.UTF-8' where datname='template0';

Salgamos del psql:
postgres=# q

martes, 16 de junio de 2015

Comandos PostgreSQL para la Administracion de bases de datos

PostgreSQL Es Un Servidor de Base de Datos Objeto relacional libre, Liberado bajo la Licencia BSD. Como Muchos OTROS PROYECTOS código abierto, el Desarrollo de PostgreSQL no es manejado por Una Sola Compañía sino-Que es Dirigido Por Una comunidad de Desarrolladores y Organizaciones Comerciales las Cuales trabajan en su Desarrollo, Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).

Aquí en adelante Viene LO IMPORTANTE.

1. Crear ONU Usuario.
[Postgres @ GNU] [~] $ createuser luix
Clase_Maritima => CREATE pilar USUARIO con la contraseña 'pilar';

2. Listando todos los Usuarios
Clase_Maritima => du
Clase_Maritima => SELECT * FROM pg_user;

3. Cambiando el contraseña de la ONU Usuario.
Clase_Maritima => ALTER pilar USUARIO con la contraseña "123456";

4. Cambiando el nombre de la ONU usuario
Clase_Maritima => ALTER pilar USUARIO RENAME a Manolo;

5. Borrando Usuarios
[Postgres @ GNU] [~] $ dropuser pilar
Clase_Maritima pilar => usuario gota;

6. Crear Una Base Datos
[Postgres @ GNU] [~] $ createdb Maritima
Clase_Maritima => CREATE Marimar BASE DE DATOS;

7. Listando TODAS LAS Base Datos
Clase_Maritima => \l
Clase_Maritima => datname SELECT FROM pg_database;
[Postgres @ GNU] [~ / datos] -l $ psql

8. Cambiando el nombre de Base de Datos Una
Clase_Maritima => ALTER Marimar BASE DE DATOS Cambiar nombre para Maritmar;

9. Borrando Una Base Datos
postgres @ GNU] [~] $ dropdatadb Maritima
Clase_Maritima base de datos => drop Maritima;

10. Una accesando una Base Datos ONU de la estafa usuario.
[Postgres @ GNU] [~] $ psql -U pilar -h localhost -d Maritima

11. Creando Tablas
CREATE TABLE Pollo (
Codigo char (5),
Nombre varchar (40),
Peso entero,
Fecha de Edad,
Famila varchar (10)
);

12. Creando tabla from ONU SELECT
Clase_Maritima => create table Mar como SELECT * FROM pollo;

13. creadas Listando Las Tablas
Clase_Maritima => dt
Clase_Maritima => SELECT * FROM pg_tables;

14. viendo la Estructura De Una Tabla
Clase_Maritima => d pollo

15. Cambiando el nombre De Una Tabla
Clase_Maritima => ALTER TABLE RENAME TO pollo pollos;

16. Cambiando el nombre de la ONU campo De Una Tabla
Clase_Maritima => ALTER TABLE RENAME pollos age A Fecha_Muerte;

17. Agregandole ONU campo una tabla Una
Clase_Maritima => ALTER TABLE ADD pollos carbón sexo columna (1);

18. Borrando ONU campo de Una tabla
Clase_Maritima => ALTER TABLE DROP pollos sexo;

19. Cambiando el tipo de dato De Una columna De Una tabla.
Clase_Maritima => ALTER TABLE ALTER TIPO pollos codigo varchar;

20. Borrando Una Tabla
Clase_Maritima-> DROP pollo TABLA;

21. Insertando Datos En Una Tabla
Clase_Maritima => INSERT INTO VALORES pollo ('1', 'Gallina', 8, CURRENT_DATE, 'Criollo');

22. Insertando Datos A partir de la ONU SELECT
Clase_Maritima => INSERT INTO pollos (nombre, famila) bandera SELECT, codigo DE buque;

23. Seleccionado Conmigo Una tabla
Clase_Maritima => SELECT * FROM pollo;

24. Muestra el Plan de Ejecución de la Sentencia
Clase_Maritima = # EXPLAIN SELECT * FROM buque;

25. Para saber la amount de registro en Una tabla (Count)
Clase_Maritima = # SELECT count (*) DE buque;

26. Selecionar los registros no repetidos De Una Campo (DISTINCT)
Clase_Maritima = # SELECT distinta (bandera) de buque;

27. Actualizando Conmigo Una tabla
Clase_Maritima => ACTUALIZACIÓN pollo SET nombre = 'Gallo' WHERE codigo = 1;

28. Borrando registros De Una tabla.
Clase_Maritima => BORRAR DESDE DONDE pollo codigo = '1';

29. tablas Truncando
Clase_Maritima pollo => TRUNCATE;

30. Agregando Una llave primaria un campo de la ONU Una tabla
Clase_Maritima => ALTER TABLE ADD CONSTRAINT pollos pk_codigo PRIMARY KEY (codigo);

31. Creando Una vista
Clase_Maritima = # CREATE VIEW v_pollo como SELECT * FROM pollos;

32. Seleccionando Datos De Una Vista
Clase_Maritima = # SELECT * FROM v_pollo;

33. VIENDO LAS VISTAS Creadas
Clase_Maritima = # dv
Clase_Maritima = # ViewName SELECT FROM pg_views;

34. Borrando Una vista
Clase_Maritima v_pollo = # DROP VIEW;

35. Agreando llave Una foráneas un campo de la ONU Una tabla
Clase_Maritima => ALTER TABLE ADD CONSTRAINT pollos pk_codigo FOREIGN KEY (Código) REFERENCIAS buque (codigo);

36. Borrando Una CONSTRAINT ONU
Clase_Maritima => ALTER TABLE DROP CONSTRAINT pk_codigo pollos;

37. Agregando ONU restricción de comprobación de un campo de la ONU
Clase_Maritima => ALTER TABLE ADD pollos cheque c_check CONSTRAINT (fecha_muerte> '2007-01-01');

38. Agregando ONU restricción DEFAULT un campo de la ONU
Clase_Maritima => ALTER TABLE ALTER pollos pesos SET DEFAULT 23;

39. Creando ONU Indice una tabla Una
Clase_Maritima => CREATE INDEX pkU_pollo EN pollos (Código);

40. Creando ONU unico indice
Clase_Maritima => CREATE UNIQUE pku_pollo ÍNDICE DE LA pollos (pesos);

41. Cambiandole el nombre de un indice de la ONU
Clase_Maritima => ALTER INDEX pku_pollo Renombrar para pki_pollo;

42. Ver los índices CREADOS En Una Base Datos
Clase_Maritima => di
Clase_Maritima => indexname SELECT, nombretabla DE pg_indexes;

43. Borrando ONU indice
Clase_Maritima => DROP INDEX pku_pollo;

Secuencia de la ONU 44. Creando
Clase_Maritima => CREATE SEQUENCE s_mari comenzar con 1.000 Valor mínimo por 2 maxvalue 1100;

45. Ver el siguente valor de secuencia de la ONU
Clase_Maritima => SELECT nextval ('s_mari');

46. ​​Ver el valor real de la secuencia de la ONU
Clase_Maritima => SELECT currval ('s_mari');

47. Modificar el valor inicial de secuencia de la ONU
Clase_Maritima => SELECT setval ('s_mari', 1000);

48. Utilizando INNER JOIN
Clase_Maritima = # SELECT * FROM archivos f combinación interna lineas l EN l.codigo = f.linea;

49. Utilizando LEFT OUTER JOIN
Clase_Maritima = # SELECT * FROM archivos f LEFT OUTER JOIN lineas l EN l.codigo = f.linea;

50. Utilizando RIGHT OUTER JOIN
Clase_Maritima = # SELECT * FROM archivos f RIGHT OUTER JOIN lineas l EN l.codigo = f.linea;

51. Utilizando FULL OUTER JOIN
Clase_Maritima = # SELECT * FROM archivos f FULL OUTER JOIN lineas l EN l.codigo = f.linea;

52. Utilizando LEFT OUTER JOIN
Clase_Maritima = # SELECT * FROM archivos f LEFT JOIN lineas l USO (Linea);

53. Utilizando operador Mayor que
Clase_Maritima = # buque SELECT, loa DESDE DONDE buque loa> 1000;

54. Utilizando operador Menor Que
Buque Clase_Maritima = # SELECT, loa DESDE DONDE buque loa <1,000;

55. Utilizando operador Igual
Clase_Maritima = # buque SELECT, loa DESDE DONDE buque buque = 'AIDA';

56. Utilizando operador Menor o Igual Que
Clase_Maritima = # SELECT buque, loa DESDE DONDE buque loa <= 1000;

57. Utilizando operador Mayor o Igual Que
Buque Clase_Maritima = # SELECT, loa DESDE DONDE buque loa> = 1,000;

58. Utilizando operador n igual
Buque Clase_Maritima = # SELECT, loa DESDE DONDE buque loa <> 1000;
Buque Clase_Maritima = # SELECT, loa DESDE DONDE buque loa = 1000!;

59. Utilizando operador Concatenación
Clase_Maritima = # SELECT buque || '' || dueno DE buque;

60. Utilizando EXISTE
* SELECT FROM boardingclerk DONDE EXISTE (SELECCIONAR 1 DE archivos);

61. Utilizando conector IN
SELECT * FROM archivos DONDE boarding_clerk IN (31, 33, 35);
SELECT * FROM archivos DONDE boarding_clerk NO EN (31, 33, 35);

62. La cláusula ORDER BY
Clase_Maritima = # SELECT * FROM ORDEN puertos POR 1 ASC;
Clase_Maritima = # SELECT codigo, Puerto desde puertos ORDER BY puerto DESC;

63. La cláusula GROUP BY
Clase_Maritima = # SELECT buque, cuenta (*) de los archivos GROUP BY buque;

64. Funciones Calcular párr
Clase_Maritima = # SELECT AVG (LOA) DEL BUQUE;
Clase_Maritima = # SELECT MAX (LOA) DEL BUQUE;
Clase_Maritima = # SELECT MIN (LOA) DEL BUQUE;
Clase_Maritima = # SELECT SUM (LOA) DEL BUQUE;

65. Operaciones de conjunto (UNION).
Linea SELECT FROM archivos
unión
SELECT codigo DE lineas;

66. Operaciones de conjunto (UNION ALL).
Linea SELECT FROM archivos
la unión de todo
SELECT codigo DE lineas;

67. Operaciones de conjunto (INTERSECT).
Linea SELECT FROM archivos
INTERSECT
SELECT codigo DE lineas;

68. Utilizando Operadores aritméticos
FCLD = # SELECT 8 + 3 como Suma;
FCLD = # SELECT 8-3 como Resta;
FCLD = # SELECT 8/3 como Divide;
FCLD = # SELECT 8 * 3 como Multiplica;

69. Utilizando Funciones Matemáticas
FCLD = # SELECT 20-233 como Resta; - El resultado m Sera Negativo
FCLD = # SELECT abs (20-233) como Resta; This Funcion
FCLD = # SELECT cbrt (27); - Retorna El cubo
FCLD = # ronda SELECT (99.4);
FCLD = # ronda SELECT (99.2, 3);
FCLD = # pi SELECT ();
FCLD = # trunc SELECT (99.1);

70. Funciones de Cadenas
FCLD = # SELECT 'José' || 'Paredes;
FCLD = # SELECT bit_length ('k');
FCLD = # SELECT CHAR_LENGTH ('jose');
FCLD = # SELECT inferior ('GNU');
FCLD = # SELECT superior ('gnu');
FCLD = # SELECT INITCAP ('manuel');
FCLD = # SELECT ascii ('K');
FCLD = # SELECT chr (75);
FCLD = # SELECT md5 ('1');

71. Funciones FECHAS Y Horas
FCLD = # SELECT abstime ("ahora" :: marca de tiempo); -convierte un abstime
FCLD = # SELECT edad ("ahora", "06/13/1957" :: marca de tiempo); -preserva meses y años
FCLD = # SELECT to_char (CURRENT_TIMESTAMP, 'HH12: MI: SS'); datetime -convierte una cadena
FCLD = # SELECT to_char (ahora (), 'HH12: MI: SS');
FCLD = # CURRENT_DATE SELECT;
FCLD = # CURRENT_TIMESTAMP SELECT;
Clase_Maritima = # to_date SELECT (fecha_llegada, 'Mon MM YY') de los archivos;
Clase_Maritima = # SELECT to_char (to_date (fecha_llegada, 'Mon AA MM'), 'AAAA-mes-día) de los archivos;
FCLD = # to_date SELECT (08 12 2007 13 ',' DD AAAA HH lun '); cadena -convierte una fecha

72. Los Conectores Lógicos en SQL hijo AND-OR-NO
Buque Clase_Maritima = # SELECT, capitan, bandera, loa DESDE DONDE buque capitan como 'A%' Y loa <1,000 OR loa = 2,450;

73. Copiando from Datos ONU archivo una tabla Una
Buque COPIA DE '/var/lib/pgsql/Buquedatos.txt';

martes, 2 de junio de 2015

Respaldar y Restaurar base de datos en MySQL


Respaldo de la base de dato actual
mysqldump -u root -p nomb_bd > nomb_bd.sql

Restaurar la base de dato actual por la de la bakup
mysql -u root -p nomb_bd < nomb_bd.sql

Reiniciamos los servicios 
/etc/init.d/mysql restart
[ ok ] Restarting mysql (via systemctl): mysql.service.

Instalación y Configuración de MediaWiki en Debian Jessie

*PAQUETES NECESARIOS

- apache2
- mysql-server
- php5 php5-mysql
-libapache2-mod-php5

*INSTALACION DE PAQUETES NECESARIOS

apt-get -y update && apt-get -y install apache2 mysql-server php5 php5-mysql libapache2-mod-php5

*LUEGO SE DESCARGA MEDIAWIKI

Entramos en el directorio home y procedemos a descargar e intalar el paquete

#cd home
#wget http://releases.wikimedia.org/mediawiki/1.24/mediawiki-1.24.2.tar.gz

Extraer en su directorio

Ubuntu  <14 y Debian: /var/www/

Descomprimir el .tar.gz
#tar -xvzf mediawiki-*.tar.gz

Mover la carpeta al directorio web
#mv mediawiki - */*/var/www/html

Entramos al directorio web
cd /var/www/html

Y cambiamos el nombre de la carpeta en este caso le coloque wiki
mv mediawiki wiki


SOLO EN EL CASO DE USAR MAQUINA VIRTUALES DEBE REALIZAR ESTOS PASOS Y LUEGO CONTINUÉ CREANDO LA BASE DE DATOS, SI NO TIENE MAQUINA VIRTUALES CONTINUÉ LEYENDO LOS PASOS PARA CREAR LA BASE DE DATO...

VIRTUALHOST EN EL CONTENEDOR (SERVIDOR) Y EN LA MAQUINA VIRTUAL WIKI

Maquina Virtual
Ruta: nano /etc/apache2/sites-available/wiki.nueva.net.conf

<VirtualHost *:80>
    ServerAdmin usuario@gmail.com
    DocumentRoot "/var/www/html/wiki/mw-config/index.php"
    ServerName wiki.nueva.net
    ErrorLog "${APACHE_LOG_DIR}/localhost_sitio1-error_log"
    CustomLog "${APACHE_LOG_DIR}/localhost_sitio1-access_log" common
    <Directory "/var/www/html/wiki">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Una vez configurado y guardado, realizamos el enlase simbolico y restauramos el servicio

#ln -s /etc/apache2/sites-available/wiki.nueva.net.conf /etc/apache2/sites-available/wiki.nueva.net.conf

#/etc/init.d/apache2 restart

Contenedor
Ruta: nano /etc/nginx/sites-available/wiki

server {
  listen  80;
  server_name wiki.nueva.net;

   access_log  /var/log/nginx/wiki-net.access.log;
  error_log   /var/log/nginx/wiki-net.error.log;

   location / {
rewrite ^/.* http://$server_name/wiki permanent;
        proxy_pass       http://192.168.1.102;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }


   error_page   500 502 503 504  /50x.html;
  location = /50x.html {
          root   /var/www/nginx-default;
  }
 }

Una vez configurado y guardado, realizamos el enlace simbólico y restauramos el servicio

#ln -s /etc/nginx/sites-available/wiki /etc/nginx/sites-enabled/wiki

#/etc/init.d/nginx restart

Para verificar los enlaces se corre este comando
#ls -la

SI NO TIENE EL SERVICIO EN MAQUINAS VIRTUALES CONTINUAR CON ESTOS PASOS DE CREACIÓN DE LA BASE DE DATO...

Ingresamos como root a mysql

#mysql -u root -p
Enter password: wikicanaima

Creamos la bd en mysql
#mysql> CREATE DATABASE wiki_bd;
Query OK, 1 row affected (0.02 sec)

Creamos el usuario de la bd
#mysql> CREATE USER wikiusuario@localhost IDENTIFIED BY 'canaimawiki';
Query OK, 0 rows affected (0.00 sec)

Otorga privilegios a la cuenta de usuario
#mysql> GRANT index, create, select, insert, update, delete, alter, lock tables on wiki_bd.* TO  wikiusuario@localhost;
Query OK, 0 rows affected (0.00 sec)

Ahora ejecutamos:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> exit


Opcional: Configurar PHP

Edite el archivo de configuración de PHP, php.ini . Para Ubuntu 14.x es al /etc/php5/apache2/php.ini . Dependiendo de la versión de Ubuntu que puede estar situado en /etc/php5/php.ini o /etc/apache2/php/php.ini

nano /etc/php5/apache2/php.ini

*Tamaño máximo del archivo de carga
Suponiendo que varios archivos van a ser cargado en el Wiki como contenido, el límite en el tamaño máximo de una carga tiene que ser ajustado. Cerca de la mitad hacia abajo es la sección de carga de archivos. Cambio:

upload_max_filesize = 2M

a por lo menos 20M. Es posible que tenga que ajustar esto de nuevo en el futuro si quieres cargas más grandes.

*Límite de memoria
Algunos scripts PHP requieren mucha memoria para funcionar. Para aumentar la cantidad máxima de memoria que un script puede utilizar, página abajo a cerca de 21%, y cambiar la siguiente entrada, si se encuentra, desde

memory_limit = 8M

a

memory_limit = 128M

Nota: Si ya es 128M o más, dejarlo como está.


*Configurar MediaWiki en la Web

Navega tu navegador para http: // localhost / mediawiki (para ciertas instalaciones puede ser http: // localhost / mediawiki / config o http://wiki.hostname.com/config lugar) en este caso se coloca wiki.nueva.net/wiki y comenzamos hacer la instalación de la wiki via weby siguiendo el procedimiento dado.

Preste mucha atención en el script de instalación de MediaWiki "ambiente ... Comprobando". Esto puede resolver muchos de los problemas al identificar específicamente la fuente de los errores. Rellene el formulario de configuración y continuar.

En Base de datos de configuración, es posible cambiar el nombre de la base y DB nombre de usuario para nuevos valores, pero debe activar "Usar la cuenta de superusuario".

Una vez que termina la instalación web, se va generar un archivo llamado LocalSettings.php ese archivo debe ser guardado en la ruta : /var/www/html/wiki , a continuación se muestra como mover el archivo si tiene una maquina virtual o si tiene la wiki local.










Si tiene una maquina virtual la pasa de su equipo a la maquina virtual 
#scp /home/usuario/Descargas/LocalSettings.php usuarioserver@10.16.106.126:/home/usuarioserver/

y luego la mueve a la siguiente ruta , si no tiene maquina virtual solo realice este paso:
#mv /home/usuarioserver/LocalSettings.php /var/www/html/wiki

Le damos permisos a la configuración
#chmod 655 LocalSettings.php

Una vez finalizado esto ya puedes ver tu wiki en el navegador y comenzar a colocar los articulos de tu preferencia.

PARA RESTABLECER UNA BASE DE DATOS SI YA TENEMOS UNA WIKI CON SU BASE DE DATO SE DEBE REALIZAR LO SIGUIENTE:

Respaldo de la base de dato actual
mysqldump -u root -p wiki_bd > wiki_bd.sql

Restaurar la base de dato actual por la de la wiki
mysqldump -u root -p wiki_bd > wiki_bd.sql

Reiniciamos los servicios 
/etc/init.d/mysql restart
[ ok ] Restarting mysql (via systemctl): mysql.service.

/etc/init.d/apache2 restart
[ ok ] Restarting apache2 (via systemctl): apache2.service.

Actualizar el php para levantar los cambios de la Base de Dato.
#cd /www/html/wiki/maintenance/
#php update.php