sql >> Databáze >  >> RDS >> Mysql

Použití relačních databází MySQL na Arch Linuxu

MySQL je populární systém pro správu databází, který se používá jako poskytovatel úložiště dat pro tisíce webových a serverových aplikací. Tato příručka pomůže začátečníkům začít s MySQL na Arch Linuxu. Pokud byste chtěli nasadit MySQL jako součást zásobníku aplikací, zvažte naše průvodce LEMP a LAMP.

Konfigurace systému

Ujistěte se, že máte /etc/hosts soubor má správné položky, podobné těm, které jsou uvedeny níže. Nahraďte „12.34.56.78“ veřejnou adresou vašeho Linode, „servername“ svým krátkým názvem hostitele a „mydomain.com“ názvem domény vašeho systému.

Soubor:/ etc/hosts
127.0.0.1 localhost.localdomain localhost
12.34.56.78 servername.mydomain.com servername

Nastavte název hostitele vašeho systému nastavením HOSTNAME= hodnotu v /etc/rc.conf soubor.

Instalovat MySQL

Chcete-li aktualizovat systém a nainstalovat MySQL, zadejte následující příkazy:

pacman -Syu
pacman -S mysql

Budete chtít přidat mysqld démona do DAEMONS-() pole na konci /etc/rc.conf soubor, abyste zajistili, že proces mysql začne po dalším cyklu restartování.

Balíček serveru MySQL bude nainstalován na váš server spolu se závislostmi a klientskými knihovnami. Spusťte MySQL spuštěním následujícího příkazu:

/etc/rc.d/mysqld start

Konfigurace MySQL

Po instalaci MySQL se doporučuje spustit mysql_secure_installation , program, který pomáhá zabezpečit MySQL. Při spuštění mysql_secure_installation , bude vám nabídnuta možnost změnit heslo root MySQL, odstranit anonymní uživatelské účty, zakázat přihlášení root mimo localhost a odebrat testovací databáze. Na tyto možnosti se doporučuje odpovědět ano. Pokud budete vyzváni k opětovnému načtení tabulek oprávnění, vyberte ano. Spusťte následující příkaz ke spuštění programu:

mysql_secure_installation

Ve výchozím nastavení MySQL naslouchá pouze interním připojením. Pokud se plánujete připojit k databázi přes TCP/IP, budete muset odstranit nebo okomentovat (např. před řádek s # ) přidejte bind-address řádku v souboru my.cnf. takto:

Soubor:/ etc/mysql/my.cnf
1
2
# skip-networking
bind-address - 127.0.0.1

Povolení neomezeného přístupu k MySQL na veřejné IP se nedoporučuje, ale adresu, na které poslouchá, můžete změnit úpravou bind-address parametr. Pokud se rozhodnete svázat MySQL s vaší veřejnou IP, měli byste implementovat pravidla brány firewall, která povolují připojení pouze z konkrétních IP adres.

Další zdroje týkající se konfigurace MySQL naleznete v části „Další informace“ na konci tohoto kurzu. Restartujte démona zadáním následujícího příkazu:

/etc/rc.d/mysqld restart

Informace o připojení k vašim databázím s místními klienty naleznete v naší příručce pro bezpečný vzdálený přístup k MySQL.

Použít MySQL

Standardním nástrojem pro interakci s MySQL je mysql klientský program. Chcete-li začít, zadejte na výzvu následující příkaz:

mysql -u root -p

Budete vyzváni k zadání hesla uživatele root MySQL. Zadejte heslo, které jste přiřadili při instalaci MySQL, a zobrazí se vám obrazovka monitoru MySQL:

    Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.9-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Chcete-li vygenerovat seznam příkazů pro výzvu MySQL, zadejte \h :

    List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit      (\e) Edit command with $EDITOR.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
system    (\!) Execute a system shell command.
tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
use       (\u) Use another database. Takes database name as argument.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.

For server side help, type 'help contents'

mysql>

Vytvoříme databázi a přiřadíme k ní uživatele. Na výzvu MySQL zadejte následující příkazy:

CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'CHANGEME';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
exit

Nyní se přihlásíme zpět do klienta MySQL jako testuser a vytvořte vzorovou tabulku s názvem „zákazníci“. Zadejte následující příkazy:

mysql -u testuser -p
USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
exit

Tím se vytvoří tabulka s polem ID zákazníka typu INT pro celé číslo (automaticky inkrementováno pro nové záznamy, používá se jako primární klíč) a také dvěma poli pro uložení jména zákazníka. Samozřejmě budete pravděpodobně chtít pro zákazníka uložit mnohem více informací, než je toto, ale přesto je to dobrý příklad běžného případu.

Jak resetovat kořenové heslo MySQL

Pokud jste zapomněli své kořenové heslo MySQL, můžete je resetovat zadáním následujících příkazů:

/etc/rc.d/mysqld stop
mysqld_safe --skip-grant-tables &
mysql -u root

Následující část resetování hesla bude nyní provedena v klientském programu MySQL:

USE mysql;
UPDATE user SET PASSWORD-PASSWORD("CHANGEME") WHERE User-'root';
FLUSH PRIVILEGES;
exit

Nakonec restartujte MySQL zadáním následujícího příkazu:

/etc/rc.d/mysqld restart

Ladění MySQL

MySQL Tuner je užitečný nástroj, který se připojuje k běžící instanci MySQL a poskytuje doporučení pro konfiguraci na základě pracovního vytížení. V ideálním případě by instance MySQL měla být v provozu alespoň 24 hodin před spuštěním tuneru. Čím déle instance běží, tím lepší rady vám MySQL Tuner poskytne.

Chcete-li nainstalovat MySQL Tuner, zadejte následující příkazy:

pacman -S wget
wget http://mysqltuner.pl/mysqltuner.pl
chmod 755 mysqltuner.pl

Chcete-li spustit MySQL Tuner, jednoduše zadejte:

./mysqltuner.pl

Upozorňujeme, že tento nástroj je navržen tak, aby poskytoval návrhy konfigurace a je vynikajícím výchozím bodem. Bylo by rozumné provést další průzkum pro ladění konfigurací založených na aplikacích využívajících MySQL*. *

Další informace

Další informace o tomto tématu můžete získat v následujících zdrojích. Přestože jsou poskytovány v naději, že budou užitečné, vezměte prosím na vědomí, že nemůžeme ručit za přesnost nebo aktuálnost externě hostovaných materiálů.

  • Referenční příručka MySQL 5.1
  • Příručka PHP MySQL
  • Příklady DBI v Perlu pro DBD::mysql
  • Uživatelská příručka MySQLdb

  1. ORA-01438:hodnota větší než specifikovaná přesnost povolená pro tento sloupec při vkládání 3

  2. Základy automatizace úloh serveru SQL Server

  3. PostgreSQL index na JSON

  4. Porovnání poskytovatelů kompatibilních s Entity Framework pro Oracle?