DROP DATABASE prod;
CREATE DATABASE prod;
USE prod;
CREATE TABLE table1 (
id INTEGER ,
v VARCHAR (50),
PRIMARY KEY (id)
) ENGINE=MyISAM;
CREATE TABLE table2 (
id INTEGER ,
v VARCHAR (50),
PRIMARY KEY (id)
) ENGINE=InnoDB;
DELIMITER //
CREATE PROCEDURE dorepeat(p1 INT )
BEGIN
SET @x = 0;
REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
END
//
DELIMITER ;
CREATE FUNCTION hello (s CHAR (20))
RETURNS CHAR (50) DETERMINISTIC
RETURN CONCAT( 'Hello, ' ,s, '!' );
* This source code was highlighted with Source Code Highlighter .
( for i in $(seq 1 100); do echo "insert into table1 values ($i, '`md5sum <<< "$i"`');"; done; ) >> test.sql ( for i in $(seq 1 100); do echo "insert into table2 values ($i, '`md5sum <<< "$i"`');"; done; ) >> test.sql
mysql> select count(*) from table1; +----------+ | count(*) | +----------+ | 100 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from table2; +----------+ | count(*) | +----------+ | 100 | +----------+ 1 row in set (0.00 sec) mysql> select hello('world'); +----------------+ | hello('world') | +----------------+ | Hello, world! | +----------------+ 1 row in set (0.00 sec)
# rm -rf / var / lib / mysql / *
# mysql ERROR 2002 (HY000): Can't connect to MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
# mysql --protocol tcp <<< show databases; " Database information_schema # mysqldump - protocol tcp -A - MySQL dump 10.11 - - Host: localhost Database: - ------------------------------------------------ ------ - Server version 5.0.77 / *! 40101 SET @OLD_CHARACTER_SET_CLIENT = @@ CHARACTER_SET_CLIENT * /; / *! 40101 SET @OLD_CHARACTER_SET_RESULTS = @@ CHARACTER_SET_RESULTS * /; / *! 40101 SET @OLD_COLLATION_CONNECTION = @@ COLLATION_CONNECTION * /; / *! 40101 SET NAMES utf8 * /; / *! 40103 SET @OLD_TIME_ZONE = @@ TIME_ZONE * /; / *! 40103 SET TIME_ZONE = '+ 00:00' * /; / *! 40014 SET @OLD_UNIQUE_CHECKS = @@ UNIQUE_CHECKS, UNIQUE_CHECKS = 0 * /; / *! 40014 SET @OLD_FOREIGN_KEY_CHECKS = @@ FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS = 0 * /; / *! 40101 SET @OLD_SQL_MODE = @@ SQL_MODE, SQL_MODE = 'NO_AUTO_VALUE_ON_ZERO' * /; / *! 40111 SET @OLD_SQL_NOTES = @@ SQL_NOTES, SQL_NOTES = 0 * /; / *! 40103 SET TIME_ZONE = @ OLD_TIME_ZONE * /; / *! 40101 SET SQL_MODE = @ OLD_SQL_MODE * /; / *! 40014 SET FOREIGN_KEY_CHECKS = @ OLD_FOREIGN_KEY_CHECKS * /; / *! 40014 SET UNIQUE_CHECKS = @ OLD_UNIQUE_CHECKS * /; / *! 40101 SET CHARACTER_SET_CLIENT = @ OLD_CHARACTER_SET_CLIENT * /; / *! 40101 SET CHARACTER_SET_RESULTS = @ OLD_CHARACTER_SET_RESULTS * /; / *! 40101 SET COLLATION_CONNECTION = @ OLD_COLLATION_CONNECTION * /; / *! 40111 SET SQL_NOTES = @ OLD_SQL_NOTES * /;
mysqldump: Could not execute '/ *! 40103 SET TIME_ZONE =' + 00:00 '* /': Table 'mysql.time_zone_name' doesn't exist (1146), but this is solved by the --skip-tz-utc parameter
# ls -l / proc / 2544 / fd / total 0 lr-x ------ 1 root 64 Jun 22 12:05 0 -> / dev / null l-wx ------ 1 root 64 Jun 22 12:05 1 -> /var/log/mysqld.log lrwx ------ 1 root 64 Jun 22 12:05 10 -> socket: [9786] lrwx ------ 1 root 64 Jun 22 12:05 11 -> / tmp / ibo0UVMZ (deleted) lrwx ------ 1 root 64 Jun 22 12:05 12 -> socket: [9787] lrwx ------ 1 root 64 Jun 22 12:05 13 -> /var/lib/mysql/mysql/host.MYI (deleted) ... lrwx ------ 1 root 64 Jun 22 12:05 28 -> /var/lib/mysql/prod/table1.MYI (deleted) lrwx ------ 1 root 64 Jun 22 12:05 29 -> /var/lib/mysql/prod/table1.MYD (deleted) ...
# ls -l / proc / 2544 / fd / | grep / var / lib / mysql / | cut -d '' -f11 | cut -d / -f 5.6 | grep / | cut -d / -f1 | sort -u mysql prod # ls -l / proc / 2544 / fd / | grep / var / lib / mysql / | cut -d '' -f11 | cut -d / -f 5.6 | grep / | cut -d / -f1 | sort -u | xargs -I {} mkdir -v / var / lib / mysql / {} mkdir: created directory `/ var / lib / mysql / mysql ' mkdir: created directory `/ var / lib / mysql / prod '
mysql> show databases; + -------------------- + | Database | + -------------------- + | information_schema | | mysql | | prod | + -------------------- + 3 rows in set (0.00 sec)
# ls -l / proc / 2544 / fd / | grep / var / lib / mysql / | cut -d '' -f9,11 | awk '{cmd = "ln -s / proc / 2544 / fd /" $ 1 "" $ 2; print (cmd); system (cmd);}' ln -s / proc / 2544 / fd / 13 /var/lib/mysql/mysql/host.MYI ln -s / proc / 2544 / fd / 14 /var/lib/mysql/mysql/host.MYD ... ln -s / proc / 2544 / fd / 3 / var / lib / mysql / ibdata1 ... ln -s / proc / 2544 / fd / 38 /var/lib/mysql/prod/table1.MYD ln -s / proc / 2544 / fd / 9 / var / lib / mysql / ib_logfile1 ...
# mysqldump --protocol tcp --skip-tz-utc prod table2 mysqldump: Couldn't find table: "table2" # mysql --protocol tcp mysql> use prod; Database changed mysql> show tables; Empty set (0.00 sec)
mysql> select count (*) from table1; + ---------- + | count (*) | + ---------- + | 100 | + ---------- + 1 row in set (0.00 sec) mysql> select * from table1 limit 0,5; + ---- + ------------------------------------- + | id | v | + ---- + ------------------------------------- + | 1 | b026324c6904b2a9cb4b88d6d61c81d1 - | | 2 | 26ab0db90d72e28ad0ba1e22ee510510 - | | 3 | 6d7fce9fee471194aa8b5b6e47267f03 - | | 4 | 48a24b70a0b376535542b996af517398 - | | 5 | 1dcca23355272056f04fe8bf20edfce0 - | + ---- + ------------------------------------- + 5 rows in set (0.00 sec) mysql> select * from table2 limit 0,5; + ---- + ------------------------------------- + | id | v | + ---- + ------------------------------------- + | 1 | b026324c6904b2a9cb4b88d6d61c81d1 - | | 2 | 26ab0db90d72e28ad0ba1e22ee510510 - | | 3 | 6d7fce9fee471194aa8b5b6e47267f03 - | | 4 | 48a24b70a0b376535542b996af517398 - | | 5 | 1dcca23355272056f04fe8bf20edfce0 - | + ---- + ------------------------------------- + 5 rows in set (0.00 sec)
Source: https://habr.com/ru/post/122424/