sql >> Databasteknik >  >> RDS >> Mysql

Använd MySQL relationsdatabaser på Ubuntu 10.04 LTS (Lucid)

MySQL är ett populärt databashanteringssystem som används som datalagringsleverantör för tusentals webb- och serverapplikationer. Den här guiden hjälper nybörjare att komma igång med MySQL på en Ubuntu 10.04 LTS (Lucid) Linode. För syftet med denna handledning antar vi att du har följt stegen som beskrivs i vår Konfigurera och säkra en beräkningsinstans, att ditt system är uppdaterat och att du har loggat in på din Linode som root via SSH. Om du utför dessa steg som en standardanvändare med sudo-behörigheter, kom ihåg att lägga till "sudo" framför kommandona som visas nedan.

Grundläggande systemkonfiguration

Se till att din /etc/hosts filen innehåller vettiga värden. I exemplet nedan skulle du ersätta "12.34.56.78" med din Linodes IP-adress och "servernamn.example.com" med din Linodes fullständiga domännamn (FQDN). Det är tillrådligt att använda något unikt och minnesvärt för "servernamn" i den här filen.

Fil:/ etc/värdar
1
2
127.0.0.1 localhost.localdomain localhost
12.34.56.78 servername.example.com servername

Se sedan till att din Linodes värdnamn är inställt på det korta värdet du angav i /etc/hosts :

echo "servername" > /etc/hostname
hostname -F /etc/hostname

För att se till att universe repositories är aktiverade, ändra din /etc/apt/sources.list fil för att spegla exempelfilen nedan.

Fil:/ etc/apt/sources.list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
## main & restricted repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted

deb http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-src http://security.ubuntu.com/ubuntu lucid-security main restricted

## universe repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe

deb http://security.ubuntu.com/ubuntu lucid-security universe
deb-src http://security.ubuntu.com/ubuntu lucid-security universe

Installera MySQL

Se till att dina paketförråd och installerade program är uppdaterade genom att utfärda följande kommandon:

apt-get update
apt-get upgrade --show-upgraded

Börja med att utfärda följande kommando i din terminal:

apt-get install mysql-server

Du kommer att bli ombedd att ange ett lösenord för MySQL root-användaren. Välj ett starkt lösenord och förvara det på en säker plats för framtida referens.

MySQL-serverpaketet kommer att installeras på din server, tillsammans med beroenden och klientbibliotek. När du har installerat MySQL rekommenderar vi att du kör mysql_secure_installation för att hjälpa till att säkra MySQL. När du kör mysql_secure_installation , kommer du att presenteras med möjligheten att ändra MySQL root-lösenordet, ta bort anonyma användarkonton, inaktivera root-inloggningar utanför localhost och ta bort testdatabaser. Det rekommenderas att du svarar ja på dessa alternativ. Om du uppmanas att ladda om behörighetstabellerna väljer du Ja. Kör följande kommando för att köra programmet:

mysql_secure_installation

Efter att ha kört mysql_secure_installation , MySQL är säkert och redo att konfigureras.

Konfigurera MySQL

Som standard gör MySQL vissa antaganden om din servermiljö med avseende på minne. För att konfigurera MySQL mer konservativt måste du redigera några inställningar i dess konfigurationsfil. Din fil bör likna följande:

Fil:/ etc/mysql/my.cnf
1
2
3
4
5
6
key_buffer = 16M
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

Dessa inställningar är endast föreslagna värden för en miljö med lågt minne; vänligen justera dem till lämpliga värden för din server. Se avsnittet "Mer information" i slutet av denna handledning för ytterligare resurser om detta ämne.

MySQL binder till localhost (127.0.0.1) som standard. Se vår säkra MySQL fjärråtkomstguide för information om hur du ansluter till dina databaser med lokala klienter.

Att tillåta obegränsad åtkomst till MySQL på en offentlig IP rekommenderas inte, men du kan ändra adressen den lyssnar på genom att ändra bind-address parameter. Om du bestämmer dig för att binda MySQL till din publika IP bör du implementera brandväggsregler som endast tillåter anslutningar från specifika IP-adresser.

Använda MySQL

Standardverktyget för att interagera med MySQL är mysql klientprogram. För att komma igång, utfärda följande kommando vid din prompt:

mysql -u root -p

Du kommer att bli ombedd att ange root MySQL-användarens lösenord. Ange lösenordet du tilldelade när du installerade MySQL, så kommer du att se MySQL-skärmen:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.41-3ubuntu12 (Ubuntu)

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

mysql>

Om du har glömt ditt root-lösenord, använd verktyget för paketomställning för att ändra lösenordet:

dpkg-reconfigure mysql-server-5.1

För att generera en lista med kommandon för MySQL-prompten skriver du \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>

Låt oss skapa en databas och tilldela en användare till den. Ge följande kommandon vid MySQL-prompten:

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

Låt oss nu logga in på MySQL-klienten igen som testuser och skapa en exempeltabell som heter "kunder". Ge följande kommandon:

mysql -u testuser -p

USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);

Detta skapar en tabell med ett kund-ID-fält av typen INT för heltal (automatiskt inkrementerat för nya poster och används som primärnyckel), samt två fält för att lagra kundens namn.

Som standard kommer åtkomst till databaser att vara begränsad till anslutningar från localhost. För att säkert administrera dina databaser från en avlägsen plats, följ vår guide för säker administrering av mysql med en SSH-tunnel. Det är inte en bra praxis att köra MySQL på din offentliga IP-adress, såvida du inte har ett mycket bra skäl för att göra det.

Mer information

Du kanske vill konsultera följande resurser för ytterligare information om detta ämne. Även om dessa tillhandahålls i hopp om att de kommer att vara användbara, vänligen observera att vi inte kan garantera noggrannheten eller aktualiteten hos externt värdmaterial.

  • MySQL 5.1 Referensmanual
  • Handbok för PHP MySQL
  • Perl DBI-exempel för DBD::mysql
  • MySQLdb användarhandbok

  1. Kolumn _ID finns inte fel även om den finns i tabellen

  2. Använd MySQL relationsdatabaser på Ubuntu 10.10 (Maverick)

  3. Covid-19 beredskap på ScaleGrid

  4. Att blanda explicita och implicita kopplingar misslyckas med Det finns en post för tabell ... men den kan inte refereras från den här delen av frågan