PEX via MySQL - Základy (1.díl)

Message
Autor
Qentus
Příspěvky: 91
Registrován: 08 črc 2012, 16:00
Reputation: 0

PEX via MySQL - Základy (1.díl)

#1 Příspěvekod Qentus » 09 črc 2012, 09:42

Miniseriál o PEX a MySQL:
- PEX via MySQL - Základy (1.díl)
- PEX via MySQL - Migrace (2.díl)

Základy

Požadavky:
- schopnost nainstalovat PEX - viewtopic.php?f=85&t=4180
- přístup k databázi
- chuť naučit se něco nového a vylepšit svůj server


Výhody:
- dynamické přidávání/odebírání pravomocí přes různé PHP scripty
- už žádné chyby kvůli špatnému zápisu do souboru

Nevýhody:
- na začátek možná nepřehledné, ve výsledku ovšem 1000x lepší

Budu tedy předpokládat, že máte nainstalovaný PEX a že máte přístup do DB.
Pokud umíte základy SQL/MySQL. tak není co řešit. Pokud neumíte, tak se taky ničeho nemusíte bát - můžete využít grafické rozhraní jakým je např. PhpMyAdmin.

1.krok
- do config.yml dejte vložte toto a upravte si to dále podle sebe

Kód: Vybrat vše

permissions:
  basedir: plugins/PermissionsEx
  backend: sql
  backends:
    sql:
      driver: mysql
      uri: mysql://adresa_vasi_db
      user: jmeno_uzivatele
      password: heslo
  superperms:
    disable-unmatched: false
    enable: true
    matched-permissions: true
    debug: false
    raw-permissions: true
    strict-mode: false
    parent-nodes: true
  createUserRecords: false
  allowOps: true
  debug: false


2.krok
- reload/restart serveru

V databázi byste teď měli mít něco takového
Spoiler: zobrazit
Obrázek

K čemu jaký table slouží?
- permissions - přiřazení pravomocí k hráči/skupině (více v další kapitole)
- permissons_entity - seznam všech skupin (více v další kapitole)
- permissions_inheritance - kdo patří do jaké skupiny (více v další kapitole)


To je z instalace vše.

Teď se podíváme blíže na funkce daných tabulek.

Tabulka permissions
Vkládání nových záznamů
Spoiler: zobrazit
Obrázek

- kolonky "id" si nevšímáme - hodnota se sama vyplní a určuje pořadí záznamu
- do kolonky "name" píšeme název skupiny/hráče pro které přidáváme práva
- kolonka "type" slouží k určení, jestli přidáváme práva skupině a nebo hráči.
  • když chci nastavit třeba fly pro hráče Qentus tak napíšu číslo 1
  • když chci nastavit fly pro skupinu Admin, tak napíšu číslo 0
- do kolonky "permission" píšeme název pravomoce - např. "essentials.fly" (bez úvozovek) a nebo můžeme pravomoci znegovat (uživateli/skupině právo odebereme) zápisem "-essentials.fly"
- do kolonky "world" napíšeme pro jaké světy to má platit (můžeme napsat jen 1 svět - pro více světů potřebujeme více záznamů)
  • pokud to má být globálně, tak necháme políčko prázdné
- políčko "value" slouží k nastavení nějaké dodatečné hodnoty, např. při nastavování cooldownu pro /home
  • většinou necháváme prázdné
Výsledek může vypadat takto:
Spoiler: zobrazit
Obrázek


Přidal jsem ještě skupině Admin práva na /gamemode a když se teď podíváme na obsah tabulky tak uvidíme toto:
Spoiler: zobrazit
Obrázek


To je asi tak vše k tabulce "permissions". Samozřejmě tam můžete mazat, upravovat atd....

Tabulka permissions_entity
- v configu doporučuji nastavit:

Kód: Vybrat vše

  createUserRecords: false

  • databáze bude přehlednější
- tento table slouží k nastavení prefixu, sufixu a default skupiny

Podobně jako nahoře zde popíšu k čemu jaká kolonka slouží:
- "name" - jméno skupiny/hráče
- "type" - jako minule - jednička pro hráče, nula pro skupinu
- "prefix" - co má mít napsané před jménem
- "sufix" - co má mít za jménem
- "default" - nastavujeme hodnotu 0 nebo 1
  • pro skupinu kterou má dostat každý hráč při registraci napíšeme jedničku

Tabulka permissions_inheritance
- zde nastavujeme, kdo má patřit do jaké skupiny

- "child" - jméno hráče
- "parent" - jméno skupiny, kterou cheme hráči přidělit
- "type" - pro základy postačí hodnota 1 (o tomto se více rozepíšu v dalším návodu)
- "world" - jako obvykle - pro který svět má skupina platit
  • necháme prázdné pokud to má být globálně


To je k základům vše. Přeji příjemnou zábavu
Samozřejmě zde můžete psát vaše dotazy.


Je velká šance, že jsem něco zapomněl/přehlídl, takže mě můžete opravit

PS. : brzy zde ještě připíšu vychytávky pro pokročilé, které vám usnadní život
Naposledy upravil(a) Qentus dne 09 črc 2012, 20:05, celkem upraveno 3 x.
Pokud vám má rada pomohla, odměňte mě prosím karmou. Díky

Uživatelský avatar
Arcas
Příspěvky: 1406
Věk: 25
Registrován: 13 bře 2012, 19:15
Reputation: 0

Re: PEX (MySQL) - Základy

#2 Příspěvekod Arcas » 09 črc 2012, 12:02

Je nějaká možnost jak již nastavené permissions přehodit do MySQL?
Čeština a jiné jazyky jsou Freeware, ale ne Opensource!!! To znamená, že s nimi můžete nakládat jak chcete, ale nesmíte je upravovat...

// no comment

Uranus-Portal.com
Obrázek

Qentus
Příspěvky: 91
Registrován: 08 črc 2012, 16:00
Reputation: 0

Re: PEX (MySQL) - Základy

#3 Příspěvekod Qentus » 09 črc 2012, 12:10

Jestli bude zájem, tak mohu sepsat návod na migraci soubor->MySQL zároveň s triky a tipy pro pokročilé.
Pokud vám má rada pomohla, odměňte mě prosím karmou. Díky

Uživatelský avatar
zdenda204
Příspěvky: 3617
Věk: 35
Registrován: 23 kvě 2012, 21:38
Reputation: 0

Re: PEX (MySQL) - Základy

#4 Příspěvekod zdenda204 » 09 črc 2012, 12:48

Když ty pexy mám takto v DB tak stále ve hře fungují přikazy jako /pex user zdenda204 group add vip ?
Přijímám zakázky na skripty/pluginy v PHP/Javě za malý poplatky! A kup mi sušenku :) Obrázek Obrázek
⇨Projekt Market⇦

Qentus
Příspěvky: 91
Registrován: 08 črc 2012, 16:00
Reputation: 0

Re: PEX (MySQL) - Základy

#5 Příspěvekod Qentus » 09 črc 2012, 12:54

Samozřejmě
Pokud vám má rada pomohla, odměňte mě prosím karmou. Díky

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: PEX (MySQL) - Základy

#6 Příspěvekod Welton123 » 09 črc 2012, 12:54

Jo, super navod ale chtelo by to to na tu migraci ;)
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄

Qentus
Příspěvky: 91
Registrován: 08 črc 2012, 16:00
Reputation: 0

Re: PEX (MySQL) - Základy

#7 Příspěvekod Qentus » 09 črc 2012, 12:56

OK, takže když už jste 2 co to chtějí tak večer sepíšu i návod na migraci pokud vše půjde podle plánu (mám ještě práci na svém webu)
Pokud vám má rada pomohla, odměňte mě prosím karmou. Díky

Uživatelský avatar
Arcas
Příspěvky: 1406
Věk: 25
Registrován: 13 bře 2012, 19:15
Reputation: 0

Re: PEX (MySQL) - Základy

#8 Příspěvekod Arcas » 09 črc 2012, 14:02

Udělej ju prosím ještě dnes, budu pracovat na úpravách serveru a tak bych to rád hnedka sfoukl.
Čeština a jiné jazyky jsou Freeware, ale ne Opensource!!! To znamená, že s nimi můžete nakládat jak chcete, ale nesmíte je upravovat...

// no comment

Uranus-Portal.com
Obrázek

pe89dro
Příspěvky: 116
Registrován: 29 říj 2012, 18:30
Reputation: 0

Re: PEX via MySQL - Základy (1.díl)

#9 Příspěvekod pe89dro » 31 říj 2012, 15:40

skusal som to podla tvojho navodu neako som to rozbehol lenze ked som sa chcel napojit na server ta mami napisalo chybu a na dynmape ma ukazalo ako pripojeneho teda aj na servery, nastavit som chcel na seba essentials.gamemode
a robil som to podla navodu nevie niekto poradit ako co stym?

port 27087
Ak ti niekto pomohol daj mu karmu :)

Uživatelský avatar
nejento
Příspěvky: 9815
Registrován: 28 lis 2011, 14:09
Reputation: 55
Kontaktovat uživatele:

Re: PEX via MySQL - Základy (1.díl)

#10 Příspěvekod nejento » 31 říj 2012, 18:35

Založ topic a dej server.log.
Obrázek

Obrázek Přidejte se ke komunitě zákazníků na FakaHeda.eu Discord! Poznejte nové lidi nebo vyřešte svůj technický problém živě: http://discord.fakaheda.eu/


Zpět na „Návody“

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 36 hostů