Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 MySQL в конзолен режим
  1. Важни команди
  2. Работа с изключително големи таблици
Mutatos
     
Автор  Mutatos (20.04.2005 08:46)  съобщение до автора
Погледнат  6158 пъти  добави към любими
Оценка  добави коментар
Гласове  5  изпрати на приятел
Коментари  (0)  абонирай се за MySQL
    Страница 1 / 2

 



Много често се налага да се изпълняват част от функциите на MySQL от конзолата. Това може единствено да направите, в случай че имате достап чрез SSH до вашия MySQL сървър. Но в какви случай се налага да използваме тези команди по този начин. Има много причини за тази работа. Ако искате да изпълните cronjob, да тествате дадена заявка, да прилистите активните процеси, да промените структората на дадена таблица, да преименувате дадена таблица в работен режим и много други ... .

Чрез този урок имам намерение да разгледам някой от тези примери и да създам един малък наръчник на програмистите, чрез който всеки желаещ може директно с Copy&Paste и правилните данни за достъп да изпълни командите, без да се пита, дали няма да направя нещо грешно в момета, като изпълня тази заявка, защото честно казано и аз си задавам винаги този въпрос, като изпълнявам команди от конзолата в работем режим на базата за данни. Просто се налага по някога, но всеки трябва да е подготвен за това.

Ще разгледаме стъпка по стъпка различни видове примери като започнем от началото. Разбира се информация за всяка една команда може да получите в подробната документация на MySQL: http://dev.mysql.com/doc/mysql/en/index.html .


Свързване с базата за данни

CODE
1
mysql -h <host> -u <username> -p<password> <db>

С тази конада, чрез предаване на необходимите параметри:

  • <host> - хост на сървъра
  • <username> - потребителско име
  • <password> - парола
  • <db> - име на базата за данни

се свързвате с MySQL сървъра и чак тогава можете да изпълнявате команди от конзолата. То е абсолютно същата работа, като използвате MySQL във вашите скриптове. Винаги преди изпълнение на заявка, трябва да се свържете с базата за данни.

Важно! След като сте свързан с MySQL сървъра, не забравяйте след всяка команда да сложите символа ";".

Показване статуса на базата за данни

CODE
1
status;

Чрез тази команда може да се сдобиете с информация за някои от особенностите на базата ви за данни.

Показване на текущите процеси

CODE
1
show processlist;

Чрез тази команда ви се показват текущите процеси и заявки към MySQL сървъра. Това често се използва, когато забележите че вашия сървър е затормозен и искате да видите какво точно в момента се изпълнява. В случай, че видите нещо странно и решите да успокоите малко сървъра, то тогава може да прекратите даден процес с командата kill

CODE
1
kill <pid>;

<pid> е текущия номер на процеса Id, който стои от ляво в първата колона на  таблицата.

Изпълнение на заявка

Изпълнението на заявката става съвсем нормално както го правите във вашите скриптове. (CREATE, SELECT, INSERT, UPDATE, REPLACE), предимството тук, е че получавате директна информация за случилото се, докато в скриптовете се надявате да не се появи грешка, която да подразни вашите потребители. Примерна заявка е:

CODE
1
SELECT * FROM <table>;

Като получавате съответно резултата в структурирана таблица с наименованията на полетата.

+--------------+----------+----------+-----+
| <pole>      | <pole>         |
+--------------+----------+----------+-----+
| xxx          | xxx           |
| xxx             | xxx         |
| xxx           | xxx         |
| xxx         | xxx         |
+--------------+----------+----------+-----+
4 rows in set (0.00 sec)


Преименуване на таблица

Преименуването на таблица е много ефикасно, защото може да се извърши в реално време без да имате загуба на информация или сриване на сървъра. То се изпълнява с командата rename.

CODE
1
rename table TABLE1 to TABLE2;


Промяна с alter

Промяната на структората на таблица се извършва с командата ALTER. Като пример ще въведем ново поле в някоя таблица:

CODE
1
ALTER TABLE <table> ADD <pole> VARCHAR( 200 ) NOT NULL



Създаване на dump, копие на таблица

Създаването на dump (копие), може да стане за една отделна таблица или за цялата база за данни. Има няколко варианта за създаването на копие на таблица:

Създаване на копие на цяла база за данни:

CODE
1
mysqldump -h <host> -u <username> -p<password> <db> > copy.sql

Създаване копие на отделна таблица от базата за данни:

CODE
1
mysqldump -h <host> -u <username> -p<password> <db> <table> > copy.sql

Ако в горните два примера използвате опцията --opt, то тогава вашето копие, няма да съдържа отделни INSERT команди, а само един общ INSERT.

В случай, че искате да копирате само информацията на една таблица или само структората на таблицата може да използвате следните опции:

--no-create-info - създава копие без информация за структората на таблицата
--no-data  - създава копие само на структората, без информацията от таблицата.



  Следваща страница >> 


Ключови думи: бази данни MySQL заявка конзола база данни


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: Mutatos  
Николай Николов се занимава с програмиране на PHP/MySQL повече от 6 години. Заедно с разработката на уеб приложения на PHP, се занимава с Java, XML и Webservices.
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008