Compartilhe
Ir em baixo
avatar
MEMBRO

MEMBRO
Mensagens : 6
Data de inscrição : 25/03/2015
Ver perfil do usuário

Importante Adding MySQL

em Sab Dez 09, 2017 1:08 pm
Reputação da mensagem: 50% (2 votos)
Modules:

MySQL: https://1drv.ms/u/s!An6aXkYL_RZfirEEW00s7B_Uoa4tCQ

DBUtils: https://1drv.ms/u/s!An6aXkYL_RZfirB_xshqVMfLI_IGMQ



On Start:


Código:
from DBUtils.PooledDB import PooledDB
import functools
import socket
import MySQLdb
import threading
from datetime import datetime

dateNow = datetime.now()

Start = datetime.now()

pool_size = 5

db = PooledDB(MySQLdb, mincached = 1, maxcached = pool_size, setsession=['SET AUTOCOMMIT = 1'], host='HOST', user='USERNAME', passwd='PASSWORD', db='DATABASE')
cnx = [None,] * pool_size
dbcur = [None,] * pool_size

for i in xrange(0,pool_size):
    cnx[i] = db.connection()
    cnx[i].ping(True)
    dbcur[i] = cnx[i].cursor()
    print 'Tribulle %d' % (i+1)
    #cur.close()
i = 0
class MiThread(threading.Thread):
    def __init__(self,tid,sql,parametros=[]):
        threading.Thread.__init__(self)
        self.sql = sql
        self.parametros = parametros
        self.tid = tid

    def run(self):
        #print 'Thread ', a.tid, ' Abierto'
        self.valor = sqls2(self.sql,self.parametros)
        #print 'Esta usando el socket '+str(a.tid)
        #print 'Thread ', a.tid, ' Cerrado'
       
tid = 0

def sqls(sql,argumentos=[]):
    global tid
    t = MiThread(tid,sql,argumentos)
    tid += 1
    t.start()
    t.join()
    return t.valor

def sqls2(sql,argumentos=[]):
    #print 'Ejecutando Query...'
    global i
    global dbcur
    global pool_size
    if i%pool_size == pool_size-1:
        i = 0
    else:
        i += 1
   
    dbcur[i].execute(sql,argumentos)
  
    return i


Código:
pool_size = 1

pool_size = numbers of querys, for example, if you have pool_size = 5, you can run 5 querys at same moment. But, if you use twisted, use pool_size = 1 because transformice sources from aulamice dont have multicore. If you replace twisted for tornado or other you can add multicore and use multipless process for mysql.

Código:
db = PooledDB(MySQLdb, mincached = 1, maxcached = pool_size, setsession=['SET AUTOCOMMIT = 1'], host='HOST', user='USERNAME', passwd='PASSWORD', db='DATABASE')

Replace for your host, user, password and database.

Now...

On querys, replace all "?" for "%s"

For example.


Código:
this.Cursor.execute("select * from Users where Username = ? and Password = ?", [playerName, password])

to:


Código:
this.Cursor.execute("select * from Users where Username = %s and Password = %s", [playerName, password])


Now replace all


Código:
this.Cursor.execute

to
Código:
sql = sqls

For example:


Código:
sql = sqls("select * from users where name = %s and passwordHash = %s", [playerName, password])

Now, replace all fetchs.


Código:
rs = this.Cursor.fetchone()

to


Código:
rs = dbcur[sql].fetchone()

Same with "fetchall()".

WARNING:

If you have "this.privLevel = rs["PrivLevel"]" you will need change to "this.privLevel = rs[2]"

¿2? In your database, if you have this order: name, password, priv
Name = 0, password = 1 priv = 2 

If you have "commits" after querys, remove these lines.

Bye :3


Twisted error? Replace your module: https://1drv.ms/u/s!An6aXkYL_RZfirEC4d8gau-Dy1VBgw


Program for migrate sqlite to mysql database:

https://1drv.ms/u/s!An6aXkYL_RZfirEDAokoa7XjIVnBNw


Última edição por Accesito em Ter Dez 12, 2017 1:46 pm, editado 3 vez(es)
avatar
MEMBRO

MEMBRO
Mensagens : 235
Data de inscrição : 19/03/2017
Idade : 16
Localização : România
Ver perfil do usuáriohttp://blowmice.me

Importante Re: Adding MySQL

em Sab Dez 09, 2017 1:14 pm
Reputação da mensagem: 0% (3 votos)
Ty bro.
avatar
MEMBRO

MEMBRO
Mensagens : 32
Data de inscrição : 06/07/2017
Localização : %null%
Ver perfil do usuário

Importante Re: Adding MySQL

em Sab Dez 09, 2017 1:59 pm
thx
avatar
MEMBRO

MEMBRO
Mensagens : 261
Data de inscrição : 01/04/2015
Idade : 16
Ver perfil do usuáriohttp://www.miceup.top

Importante Re: Adding MySQL

em Sab Dez 09, 2017 6:28 pm
Reputação da mensagem: 100% (1 votos)
Dúvido muito alguém tentar colocar na source 1.419 que foi postada aqui ksks.
avatar
MEMBRO

MEMBRO
Mensagens : 6
Data de inscrição : 25/03/2015
Ver perfil do usuário

Importante Re: Adding MySQL

em Sab Dez 09, 2017 10:03 pm
Reputação da mensagem: 0% (1 votos)
Becker escreveu:Dúvido muito alguém tentar colocar na source 1.419 que foi postada aqui ksks.

It can be easily placed
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Dom Jan 21, 2018 7:06 am
How to install DBUtils
MEMBRO

MEMBRO
Mensagens : 4
Data de inscrição : 27/02/2016
Ver perfil do usuário

Importante Re: Adding MySQL

em Dom Jan 21, 2018 1:11 pm
jacksparroww escreveu:How to install DBUtils
Código:
pip install DBUtils
Laughing
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Dom Jan 21, 2018 2:14 pm
fidelius escreveu:
jacksparroww escreveu:How to install DBUtils
Código:
pip install DBUtils
Laughing
[EN] thank you. In Python 2.7, the CMD console in the scripts folder is valid.
[TR] Eğer Windows kullanıyorsanız. Python 2.7.3 kullanıyorsanız. Pythonun kurulu olduğu dosyaya > Scripts Klasörüne girdikten sonra klasör içinde SHIFT+Mouse Sağ Tık yaparak CMD Konsolunu açıyorsunuz. (pip install DBUtils) bu şekilde kurabilirsiniz. Ayrıca Python'a Pip Kurmanız gerekiyor. Onun kodu da (python -m pip install -Upip)
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Dom Jan 21, 2018 3:07 pm

what is error?
MEMBRO

MEMBRO
Mensagens : 4
Data de inscrição : 27/02/2016
Ver perfil do usuário

Importante Re: Adding MySQL

em Seg Jan 22, 2018 5:11 pm
'configGame' not exists
open .ini file find or create this
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Seg Jan 22, 2018 5:25 pm
fidelius escreveu:'configGame' not exists
open .ini file find or create this
not working. Do help me with TeamView ?
avatar
MEMBRO

MEMBRO
Mensagens : 32
Data de inscrição : 06/07/2017
Localização : %null%
Ver perfil do usuário

Importante Re: Adding MySQL

em Seg Jan 22, 2018 6:15 pm
jacksparroww escreveu:
fidelius escreveu:'configGame' not exists
open .ini file find or create this
not working. Do help me with TeamView ?
it must be like this, are you sure doing same?(TR: farklı şekilde yapıyorsan resimdeki gibi olmalı.)
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Seg Jan 22, 2018 6:20 pm
frenzz escreveu:
jacksparroww escreveu:
fidelius escreveu:'configGame' not exists
open .ini file find or create this
not working. Do help me with TeamView ?
it must be like this, are you sure doing same?(TR: farklı şekilde yapıyorsan resimdeki gib olmalı.)
Evet aynısı.
avatar
MEMBRO

MEMBRO
Mensagens : 32
Data de inscrição : 06/07/2017
Localização : %null%
Ver perfil do usuário

Importante Re: Adding MySQL

em Seg Jan 22, 2018 6:55 pm
jacksparroww escreveu:
frenzz escreveu:
jacksparroww escreveu:
fidelius escreveu:'configGame' not exists
open .ini file find or create this
not working. Do help me with TeamView ?
it must be like this, are you sure doing same?(TR: farklı şekilde yapıyorsan resimdeki gib olmalı.)
Evet aynısı.

search in MainServer 
Código:
def parseFunctions

paste this codes at parseFunctions end

Código:
    def config(this, setting):
        return config.get('configGame', setting, 0)

    def configShop(this, setting):
        return config.get('configShop', setting, 0)

    def configs(this, setting, value):
        config.set('configGame', setting, value)
        with open('./include/configs.properties', 'w') as f:
            config.write(f)

i think it will be fix if not, check this codes in bottom(sorunu düzelteceğini düşünüyorum, düzelmezse en alttaki şu koda da bak;)

Código:
print '[%s] %s serveur running.' % (time.strftime('%H:%M:%S'), config.get('configGame', 'game.miceName'))
avatar
BANIDO

BANIDO
Mensagens : 62
Data de inscrição : 17/08/2016
Idade : 18
Localização : Antalya
Ver perfil do usuáriohttp://zeomice.com

Importante Re: Adding MySQL

em Seg Jan 22, 2018 7:13 pm
They already exist. Not working. Have you done this before? Can you try to do it? Will you help me with TeamViewer?
Conteúdo patrocinado

Importante Re: Adding MySQL

Voltar ao Topo
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum