[Plugin] [REL] MySQL Plugin (Now on github!)

I have a problem when the server starts, crash bug "libmysqlclient_r.so.15: cannot open shared object file: No such file or directory"
Server on Linux, Debian 64bit.
How to solve this problem?

(Sorry for my bad English)
Reply

Quote:
Originally Posted by slicknslick
Посмотреть сообщение
I have a problem when the server starts, crash bug "libmysqlclient_r.so.15: cannot open shared object file: No such file or directory"
Server on Linux, Debian 64bit.
How to solve this problem?

(Sorry for my bad English)
Read the first post in this thread.

Reply

I already read it, made ​​as written, but the plugin does not start..
Reply

Problem is solved, set libmysqlclient15off
Reply

ok, i think this is problem, for me exemple, it is... lets show you some test code:

first i run MySQL server

and then run samp-server with this test code:

Код:
public OnGameModeInit() {
mysql_debug( 1 );
mysql_connect("******", "******","***********", "***********");
if(mysql_ping() == 1) prinft("Connection with database is alive!");
SetTimer("CheckAlive",1000,true);
return 1;
}

forward CheckAlive();
public CheckAlive()
{
	printf("Connection ping: %d", mysql_ping());
	return 1;
}
and every second public CheckAlive print this result:
Quote:

Connection ping: 1

so i decided to shut down MySQL server and i want samp-server still ON, but samp server crashed when first time function CheckAlive is called after shuting down MySQL, it doesnt return anything with mysql_ping(),
code from debug:
Код:
[18:53:41] >> mysql_connect( )

[18:53:41] CMySQLHandler::CMySQLHandler() - constructor called.

[18:53:41] CMySQLHandler::CMySQLHandler() - Connecting to "localhost" | DB: "ahoh_3022" | Username: "ahoh_3022" ...

[18:53:41] CMySQLHandler::Connect() - Connection was successful.

[18:53:41] CMySQLHandler::Connect() - Auto-Reconnect has been enabled.

[18:53:41] >> mysql_ping( Connection handle: 1 )

[18:53:42] CMySQLHandler::Ping() - Connection is still alive.

[18:53:43] >> mysql_ping( Connection handle: 1 )

[18:53:44] CMySQLHandler::Ping() - Connection is still alive.

[18:53:45] >> mysql_ping( Connection handle: 1 )

[18:53:46] CMySQLHandler::Ping() - Connection is still alive.

[18:53:47] >> mysql_ping( Connection handle: 1 )

[18:53:48] CMySQLHandler::Ping() - Connection is still alive.

[18:53:49] >> mysql_ping( Connection handle: 1 )

[18:53:50] CMySQLHandler::Ping() - Connection is still alive.

[18:53:51] >> mysql_ping( Connection handle: 1 )

[18:53:52] CMySQLHandler::Ping() - Connection is still alive.

//in this moment i have turn off mysql server!!!!!!!!!!

[18:53:47] >> mysql_ping( Connection handle: 1 )
What i want to show you, it that thing is stupid, lets say that i have forum and server on same machine, and i dont want to turn off my samp server, but i want only in few second to restart my mysql server becasue that i need for forum, and for that i need function for samp server to check if mysql connection is alive, if not that not allow people to login... i can check only with mysql_ping but if mysql server is down that will crash server...

but other strange thing is if i call mysql_ping before mysql_connect and there is no connection it will not crash server...



so what do you think abouth this?

I think that mysql_ping is stupid native function, why this function cannot check connection with database even if mysql server is down!?
Reply

What's with the unicode characters, i set all to utf8_unicode_ci in my database however when i get the retrieve data i get something like this: "? ? ? ? у? ? ?"

I tried to use mysql_set_charset("utf8_unicode_ci"); however i don't think it works, or i'm doing something wrong.
Reply

Quote:
Originally Posted by b.rock
Посмотреть сообщение
what is the limit of mysql?
How long is a piece of string?
Reply

Is there a good tutorial on this? I followed like three tutorials on this already and I get the same results.
Код:
C:\Users\Desertsoulz_2\Desktop\Countryside Roleplay\pawno\include\MySQL.inc(78) : warning 209: function "split" should return a value
C:\Users\Desertsoulz_2\Desktop\Countryside Roleplay\gamemodes\TexasRoleplay\v1.1\VortexRoleplay.pwn(806) : error 017: undefined symbol "mysql_debug"
C:\Users\Desertsoulz_2\Desktop\Countryside Roleplay\gamemodes\TexasRoleplay\v1.1\VortexRoleplay.pwn(1813) : error 017: undefined symbol "mysql_fetch_row_format"
Here's the code:
pawn Код:
stock InitGroups()
{
    new Query[255];
    for(new i = 0; i < MAX_GROUPS; i++)
    {
        format(Query, sizeof(Query), "SELECT * FROM `Groups` WHERE 'EntryID' = '%d'", i);
        mysql_query(Query);
        mysql_store_result();

        new line[750];
        if(mysql_fetch_row(line)) // this is 1813
        {
            sscanf(line, "p|sdsssssssddddddddfffdffffffddddddddddds",
            Groups[i][GroupName],
            Groups[i][CommandTypes],
            Groups[i][RankName0],
            Groups[i][RankName1],
            Groups[i][RankName2],
            Groups[i][RankName3],
            Groups[i][RankName4],
            Groups[i][RankName5],
            Groups[i][RankName6],
            Groups[i][Skin0],
            Groups[i][Skin1],
            Groups[i][Skin2],
            Groups[i][Skin3],
            Groups[i][Skin4],
            Groups[i][Skin5],
            Groups[i][Skin6],
            Groups[i][HQInteriorID],
            Groups[i][HQInteriorX],
            Groups[i][HQInteriorY],
            Groups[i][HQInteriorZ],
            Groups[i][HQExteriorID],
            Groups[i][HQExteriorX],
            Groups[i][HQExteriorY],
            Groups[i][HQExteriorZ],
            Groups[i][SafeX],
            Groups[i][SafeY],
            Groups[i][SafeZ],
            Groups[i][SafeInteriorID],
            Groups[i][SafeMoney],
            Groups[i][HQLock],
            Groups[i][SavedPot],
            Groups[i][SavedCrack],
            Groups[i][DisbandMinute],
            Groups[i][DisbandHour],
            Groups[i][DisbandDay],
            Groups[i][DisbandMonth],
            Groups[i][DisbandYear],
            Groups[i][SafeWorld],
            Groups[i][MOTD]);

            Groups[i][HQPickupID] = CreateDynamicPickup(1239, 23, Groups[i][HQExteriorX], Groups[i][HQExteriorY], Groups[i][HQExteriorZ], -1, -1, -1, 150.0);

            Groups[i][SafePickupID] = CreateDynamicPickup(1239, 23, Groups[i][SafeX], Groups[i][SafeY], Groups[i][SafeZ],Groups[i][SafeWorld], -1, -1, 150.0);

            printf("Server: Group %d spawned.", i);
       }
       mysql_free_result();
    }
    return 1;
}
Reply

You will never need to write 650 fileds at the time for SA:MP. For registration you only need to insert firlds that aren't constants (otherwise you use default values) and you save values when they change.
Reply

Quote:
Originally Posted by Sergei
Посмотреть сообщение
You will never need to write 650 fileds at the time for SA:MP. For registration you only need to insert firlds that aren't constants (otherwise you use default values) and you save values when they change.
Thanks for the reply.

That's what I was going for in my third paragraph, just changing the values in the database when necessary. I was just wondering if when the player registers, and adding in those fields upon registration, whether or not that would give any serious problems for the server. I don't plan on having more than maybe two people register at the same time. Would that be the way to go about it, assuming I am using threads to handle the queries?
Reply

can i install this as user or must install administrator of host?
libmysqlclient.so.15
http://forum.sa-mp.com/showpost.php?...&postcount=553
Reply

Quote:
Originally Posted by Bakr
Посмотреть сообщение
Thanks for the reply.

That's what I was going for in my third paragraph, just changing the values in the database when necessary. I was just wondering if when the player registers, and adding in those fields upon registration, whether or not that would give any serious problems for the server. I don't plan on having more than maybe two people register at the same time. Would that be the way to go about it, assuming I am using threads to handle the queries?
USe default field values and use threads. You only need to insert name, password and those fields which aren't constant upon registration.
Reply

Alright thanks, Sergei.
Reply

it's true that if i install libmysqlclient.so.15 on CentOS(linux) it will use more RAM memori and server will lag ?
i realy need this information pls answer
Reply

Quote:
Originally Posted by Sergei
Посмотреть сообщение
You will never need to write 650 fileds at the time for SA:MP. For registration you only need to insert firlds that aren't constants (otherwise you use default values) and you save values when they change.
I have 726 fields per player.
Reply

Quote:
Originally Posted by __
Посмотреть сообщение
I have 726 fields per player.
Do you update them all at the same time? No because you can't even make so big string.

And having 726 fields per player is just ... I can't find words. If I saw your database structure the only action I could probably do would be facepalm.
Reply

I doubt you would if you saw the script too, because the database structure stores information for every aspect of a player, yet I still balance data between other tables too (vehicles, etc)
Reply

I can't get this plugin to work on a 64-bit linux CentOS operating system. When i download the R5 plugin for CentOS i get this error:
Код:
Failed (libmysqlclient_r.so.15: cannot open shared object file: No such file or directory)
Then I downloaded that other file by Mow (libmysqlclient.so.15) and I get this error:
Код:
[root@ks3094342 mysql]# ldconfig
ldconfig: libraries libstdc++.so.6.0.8 and libstdc++.so.6.0.9 in directory /usr/lib have same soname but different type.
Someone help me to get this working. Thank you.
Reply

Quote:
Originally Posted by lolumadd_
Посмотреть сообщение
I can't get this plugin to work on a 64-bit linux CentOS operating system. When i download the R5 plugin for CentOS i get this error:
Код:
Failed (libmysqlclient_r.so.15: cannot open shared object file: No such file or directory)
Then I downloaded that other file by Mow (libmysqlclient.so.15) and I get this error:
Код:
[root@ks3094342 mysql]# ldconfig
ldconfig: libraries libstdc++.so.6.0.8 and libstdc++.so.6.0.9 in directory /usr/lib have same soname but different type.
Someone help me to get this working. Thank you.
i have the same problem :S
Reply

Quote:
Originally Posted by lolumadd_
Посмотреть сообщение
I can't get this plugin to work on a 64-bit linux CentOS operating system. When i download the R5 plugin for CentOS i get this error:
Код:
Failed (libmysqlclient_r.so.15: cannot open shared object file: No such file or directory)
Then I downloaded that other file by Mow (libmysqlclient.so.15) and I get this error:
Код:
[root@ks3094342 mysql]# ldconfig
ldconfig: libraries libstdc++.so.6.0.8 and libstdc++.so.6.0.9 in directory /usr/lib have same soname but different type.
Someone help me to get this working. Thank you.
I really need a solution now please. Thanks.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)