47 $db->query(
"select db_servers.* from db_servers, membres where membres.uid=$cuid and membres.db_server_id=db_servers.id;");
48 if (!$db->next_record()) {
49 $err->raise(
'db_user', _(
"There are no databases in db_servers for this user. Please contact your administrator."));
54 $this->HumanHostname = $db->f(
'name');
55 $this->Host = $db->f(
'host');
56 $this->User = $db->f(
'login');
57 $this->Password = $db->f(
'password');
58 $this->Client = $db->f(
'client');
60 $this->Database =
"mysql"; # We have to define a dabatase when we
connect, and the database must exist.
62 # Create the object without any parameter
63 $this->HumanHostname =
"";
69 $this->Database =
"mysql"; # We have to define a dabatase when we
connect, and the database must exist.
88 variable_get(
'sql_allow_users_backups', 1,
'Set 1 to allow users to configure backup of their databases, 0 if you want do disable this feature. Warning: it will not stop configured backup made by sqlbackup.sh');
97 $db->query(
"select d.*, IFNULL(count(m.uid),0) as nb_users from db_servers d left join membres m on d.id = m.db_server_id group by d.id,m.db_server_id order by d.name,d.id;");
99 while ($db->next_record()) {
107 $q = $quota->getquota(
"mysql");
110 'title' => _(
"MySQL"),
111 'ico' =>
'images/mysql.png',
119 'txt' => _(
"Databases"),
120 'url' =>
"sql_list.php",
124 'txt' => _(
"MySQL Users"),
125 'url' =>
"sql_users_list.php",
130 'txt' => _(
"PhpMyAdmin"),
131 'url' =>
"sql_pma_sso.php",
132 'target' =>
'_blank',
145 return array(
"mysql"=>
"MySQL users");
157 $err->log(
"mysql",
"get_dblist");
159 $db->query(
"SELECT login,pass,db, bck_mode, bck_dir FROM db WHERE uid='$cuid' ORDER BY db;");
161 while ($db->next_record()) {
163 $c[]=array(
"db"=>$db->f(
"db"),
"name"=>$db->f(
'db'),
"bck"=>$db->f(
"bck_mode"),
"dir"=>$db->f(
"bck_dir"),
"login"=>$db->f(
"login"),
"pass"=>$db->f(
"pass"));
175 $err->log(
"mysql",
"php_myadmin_connect");
176 $db->query(
"SELECT dbu.name,dbu.password, dbs.host FROM dbusers dbu, db_servers dbs, membres m WHERE dbu.uid='$cuid' and enable='ADMIN' and dbs.id=m.db_server_id and m.uid='$cuid';");
177 if (!$db->num_rows()) {
178 $err->raise(
"mysql",_(
"Cannot connect to PhpMyAdmin"));
183 "login"=>$db->f(
"name"),
184 "pass"=>$db->f(
"password"),
185 "host"=>$db->f(
"host")
207 $err->log(
"mysql",
"get_mysql_details");
208 $pos=strpos($dbn,
'_');
212 $dbncomp=explode(
'_',$dbn);
217 $db->query(
"SELECT login,pass,db, bck_mode, bck_gzip, bck_dir, bck_history FROM db WHERE uid='$cuid' AND db='$dbname';");
218 if (!$db->num_rows()) {
219 $err->raise(
"mysql",_(
"Database %s not found"),$dbn);
220 return array(
"enabled"=>
false);
225 return array(
"enabled"=>
true,
"login"=>$db->f(
"login"),
"db"=>$db->f(
"db"),
"name"=>$dbn,
"bck"=>$db->f(
"bck_mode"),
"dir"=>substr($db->f(
"bck_dir"),strlen(
$root)),
"size"=>$size,
"pass"=>$db->f(
"pass"),
"history"=>$db->f(
"bck_history"),
"gzip"=>$db->f(
"bck_gzip"));
230 $db->query(
"SELECT ");
243 $err->log(
"mysql",
"add_db",$dbn);
245 if (!$quota->cancreate(
"mysql")) {
246 $err->raise(
"mysql",_(
"Your databases quota is over. You cannot create more databases"));
249 $pos=strpos($dbn,
'_');
253 $dbncomp=explode(
'_',$dbn);
257 $err->raise(
"mysql",_(
"Database can't have empty suffix"));
261 if (!preg_match(
"#^[0-9a-z]*$#",$dbn)) {
262 $err->raise(
"mysql",_(
"Database name can contain only letters and numbers"));
267 if (strlen($dbname) > 64) {
268 $err->raise(
"mysql",_(
"Database name cannot exceed 64 characters"));
271 $db->query(
"SELECT * FROM db WHERE db='$dbname';");
272 if ($db->num_rows()) {
273 $err->raise(
"mysql",_(
"Database %s already exists"),$dbn);
277 $db->query(
"SELECT name from dbusers where name='".$dbname.
"' and enable='ACTIVATED' ;");
278 if(!$db->num_rows()){
280 if(!$this->
add_user($dbn,$password_user,$password_user)){
285 $db->query(
"SELECT * FROM dbusers WHERE uid=$cuid AND enable='ADMIN';");
286 if ($db->num_rows()) {
288 $myadm=$db->f(
"name");
291 $err->raise(
"mysql",_(
"There is a problem with the special PhpMyAdmin user. Contact the administrator"));
296 if ($this->dbus->query(
"CREATE DATABASE `$dbname`;")) {
297 $err->log(
"mysql",
"add_db_succes",$dbn);
299 $db->query(
"INSERT INTO db (uid,login,pass,db,bck_mode) VALUES ('$cuid','$myadm','$password','$dbname',0);");
301 $dbname=str_replace(
'_',
'\_',$dbname);
303 if(!empty($password_user)){
304 $this->
grant($dbname,$dbuser,
"ALL PRIVILEGES",$password_user);
306 $this->dbus->query(
"FLUSH PRIVILEGES;");
309 $err->log(
"mysql",
"add_db",$dbn);
310 $err->raise(
"mysql",_(
"An error occured. The database could not be created"));
324 $err->log(
"mysql",
"del_db",$dbn);
325 $dbname=addslashes($dbn);
326 $db->query(
"SELECT uid FROM db WHERE db='$dbname';");
327 if (!$db->num_rows()) {
328 $err->raise(
"mysql",_(
"The database was not found. I can't delete it"));
334 $db->query(
"DELETE FROM size_db WHERE db='$dbname';");
335 $db->query(
"DELETE FROM db WHERE uid='$cuid' AND db='$dbname';");
336 $this->dbus->query(
"DROP DATABASE `$dbname`;");
338 $db_esc=str_replace(
'_',
'\_',$dbname);
339 $this->dbus->query(
"DELETE FROM mysql.db WHERE Db='$db_esc';");
341 #We test if the user created with the database is associated with more than 1 database.
342 $this->dbus->query(
"select User from mysql.db where User='".$dbname.
"' and (Select_priv='Y' or Insert_priv='Y' or Update_priv='Y' or Delete_priv='Y' or Create_priv='Y' or Drop_priv='Y' or References_priv='Y' or Index_priv='Y' or Alter_priv='Y' or Create_tmp_table_priv='Y' or Lock_tables_priv='Y');");
343 if(($this->dbus->num_rows()) == 0){
344 #If not we can delete it.
364 $err->log(
"mysql",
"put_mysql_backup");
367 $err->raise(
"mysql",_(
"User aren't allowed to configure their backups"));
371 $pos=strpos($dbn,
'_');
375 $dbncomp=explode(
'_',$dbn);
379 if (!preg_match(
"#^[0-9a-z]*$#",$dbn)) {
380 $err->raise(
"mysql",_(
"Database name can contain only letters and numbers"));
383 $db->query(
"SELECT * FROM db WHERE uid='$cuid' AND db='$dbname';");
384 if (!$db->num_rows()) {
385 $err->raise(
"mysql",_(
"Database %s not found"),$dbn);
389 $bck_mode=intval($bck_mode);
390 $bck_history=intval($bck_history);
398 $err->raise(
"mysql",_(
"You have to choose how many backups you want to keep"));
401 if (($bck_dir=$bro->convertabsolute($bck_dir,0))===
false) {
402 $err->raise(
"mysql",_(
"Directory does not exist"));
405 $db->query(
"UPDATE db SET bck_mode='$bck_mode', bck_history='$bck_history', bck_gzip='$bck_gzip', bck_dir='$bck_dir' WHERE uid='$cuid' AND db='$dbname';");
417 $err->log(
"mysql",
"put_mysql_details");
418 $db->query(
"SELECT * FROM db WHERE uid='$cuid';");
419 if (!$db->num_rows()) {
420 $err->raise(
"mysql",_(
"Database not found"));
424 $login=$db->f(
"login");
427 $err->raise(
"mysql",_(
"The password is mandatory"));
432 $err->raise(
"mysql",_(
"MySQL password cannot exceed 16 characters"));
437 if (is_callable(array($admin,
"checkPolicy"))) {
438 if (!$admin->checkPolicy(
"mysql",$login,
$password)) {
444 $db->query(
"UPDATE db SET pass='$password' WHERE uid='$cuid';");
445 $this->dbus->query(
"SET PASSWORD FOR ".$login.
"@".$this->dbus->Client.
" = PASSWORD('$password');");
457 function grant($base,
$user,$rights=null,$pass=null,$table=
'*'){
459 $err->log(
"mysql",
"grant",$base.
"-".$rights.
"-".
$user);
461 if(!preg_match(
"#^[0-9a-z_\\*\\\\]*$#",$base)){
462 $err->raise(
"mysql",_(
"Database name can contain only letters and numbers"));
464 } elseif (!$this->dbus->query(
"select db from db where db='$base';")){
465 $err->raise(
"mysql",_(
"Database not found"));
470 $rights=
'ALL PRIVILEGES';
471 }elseif(!preg_match(
"#^[a-zA-Z,\s]*$#",$rights)){
472 $err->raise(
"mysql",_(
"Databases rights are not correct"));
476 if (!preg_match(
"#^[0-9a-z]#",
$user)) {
477 $err->raise(
"mysql",_(
"The username can contain only letters and numbers."));
480 $db->query(
"select name from dbusers where name='".
$user.
"' ;");
482 if(!$db->num_rows()){
483 $err->raise(
"mysql",_(
"Database user not found"));
487 # Protect database name if not wildcard
488 if ($base !=
'*' ) $base =
"`".$base.
"`" ;
490 $grant=
"grant ".$rights.
" on ".$base.
".".$table.
" to '".
$user.
"'@'".$this->dbus->Client.
"'" ;
493 $grant .=
" identified by '".$pass.
"';";
497 if(!$this->dbus->query($grant)){
498 $err->raise(
"mysql",_(
"Could not grant rights"));
516 $err->raise(
"mysql",_(
"No file specified"));
522 if (!($fi=$bro->convertabsolute($file,0))) {
523 $err->raise(
"mysql",_(
"File not found"));
526 if (!file_exists($fi)) {
527 $err->raise(
"mysql",_(
"File not found"));
531 if (substr($fi,-3)==
".gz") {
532 $exe=
"/bin/gzip -d -c <".escapeshellarg($fi).
" | /usr/bin/mysql -h".escapeshellarg($this->dbus->Host).
" -u".escapeshellarg(
$r[
"login"]).
" -p".escapeshellarg(
$r[
"pass"]).
" ".escapeshellarg(
$r[
"db"]);
533 } elseif (substr($fi,-4)==
".bz2") {
534 $exe=
"/usr/bin/bunzip2 -d -c <".escapeshellarg($fi).
" | /usr/bin/mysql -h".escapeshellarg($this->dbus->Host).
" -u".escapeshellarg(
$r[
"login"]).
" -p".escapeshellarg(
$r[
"pass"]).
" ".escapeshellarg(
$r[
"db"]);
536 $exe=
"/usr/bin/mysql -h".escapeshellarg($this->dbus->Host).
" -u".escapeshellarg(
$r[
"login"]).
" -p".escapeshellarg(
$r[
"pass"]).
" ".escapeshellarg(
$r[
"db"]).
" <".escapeshellarg($fi);
546 echo
"</pre></code>" ;
564 $this->dbus->query(
"SHOW TABLE STATUS FROM `$dbname`;");
566 while ($db->next_record()) {
567 $size += $db->f(
'Data_length') + $db->f(
'Index_length');
568 if ( $db->f(
'Engine') !=
'InnoDB') $size += $db->f(
'Data_free');
580 $err->log(
"mysql",
"get_userslist");
583 $db->query(
"SELECT name FROM dbusers WHERE uid='$cuid' and enable not in ('ADMIN','HIDDEN') ORDER BY name;");
585 $db->query(
"SELECT name FROM dbusers WHERE uid='$cuid' ORDER BY name;");
587 while ($db->next_record()) {
588 $pos=strpos($db->f(
"name"),
"_");
590 $c[]=array(
"name"=>($db->f(
"name")));
592 $c[]=array(
"name"=>($db->f(
"name")));
602 $err->log(
"mysql",
"getdefaults");
606 $dbn=str_replace(
'_',
'\_',$dbn);
607 $q=$this->dbus->query(
"Select * from mysql.db where Db='".$dbn.
"' and User!='".$cuid.
"_myadm';");
609 if(!$db->num_rows()){
612 while ($db->next_record()) {
613 $variable = $db->Record;
614 if($variable[
'User'] == $dbu){
615 $r[
'Host']=$db->f(
'Host');
617 if($db->f(
'Select_priv') !==
"Y"){
620 if($db->f(
'Insert_priv') !==
"Y"){
623 if($db->f(
'Update_priv') !==
"Y"){
626 if($db->f(
'Delete_priv') !==
"Y"){
629 if($db->f(
'Create_priv') !==
"Y"){
632 if($db->f(
'Drop_priv') !==
"Y"){
635 if($db->f(
'References_priv') !==
"Y"){
638 if($db->f(
'Index_priv') !==
"Y"){
641 if($db->f(
'Alter_priv') !==
"Y"){
644 if($db->f(
'Create_tmp_table_priv') !==
"Y"){
647 if($db->f(
'Lock_tables_priv') !==
"Y"){
650 if($db->f(
'Create_view_priv') !==
"Y"){
653 if($db->f(
'Show_view_priv') !==
"Y"){
656 if($db->f(
'Create_routine_priv') !==
"Y"){
659 if($db->f(
'Alter_routine_priv') !==
"Y"){
662 if($db->f(
'Execute_priv') !==
"Y"){
665 if($db->f(
'Event_priv') !==
"Y"){
668 if($db->f(
'Trigger_priv') !==
"Y"){
673 if(!$db->query(
"SELECT name,password from dbusers where name='".$dbu.
"';")){
677 if(!$db->num_rows()){
681 $r[
'user']=$db->f(
'name');
682 $r[
'password']=$db->f(
'password');
698 $err->log(
"mysql",
"add_user",$usern);
701 $login=$mem->user[
"login"];
702 if($login != $usern){
703 $user=addslashes($login.
"_".$usern);
710 $err->raise(
"mysql",_(
"The username is mandatory"));
714 $err->raise(
"mysql",_(
"The password is mandatory"));
717 if (!preg_match(
"#^[0-9a-z]#",$usern)) {
718 $err->raise(
"mysql",_(
"The username can contain only letters and numbers"));
724 if (strlen(
$user) > 16) {
725 $err->raise(
"mysql",_(
"MySQL username cannot exceed 16 characters"));
728 $db->query(
"SELECT * FROM dbusers WHERE name='$user';");
729 if ($db->num_rows()) {
730 $err->raise(
"mysql",_(
"The database user already exists"));
734 $err->raise(
"mysql",_(
"The passwords do not match"));
739 if (is_callable(array($admin,
"checkPolicy"))) {
746 $db->query(
"INSERT INTO dbusers (uid,name,password,enable) VALUES($cuid,'$user','$password','ACTIVATED');");
762 $err->log(
"mysql",
"change_user_pass",$usern);
765 $user=addslashes($usern);
768 $err->raise(
"mysql",_(
"The passwords do not match"));
773 if (is_callable(array($admin,
"checkPolicy"))) {
778 $this->dbus->query(
"SET PASSWORD FOR '".
$user.
"'@'".$this->dbus->Client.
"' = PASSWORD('".$pass.
"');");
779 $db->query(
"UPDATE dbusers set password='".$pass.
"' where name='".$usern.
"' and uid=$cuid ;");
793 $err->log(
"mysql",
"del_user",
$user);
794 if (!preg_match(
"#^[0-9a-z]#",
$user)) {
795 $err->raise(
"mysql",_(
"The username can contain only letters and numbers"));
799 $db->query(
"SELECT name FROM dbusers WHERE name='".
$user.
"' and enable not in ('ADMIN','HIDDEN');");
801 $db->query(
"SELECT name FROM dbusers WHERE uid='".$cuid.
"' ;");
804 if (!$db->num_rows()) {
805 $err->raise(
"mysql",_(
"The username was not found"));
809 $login=$db->f(
"name");
812 $this->dbus->query(
"REVOKE ALL PRIVILEGES ON *.* FROM '".
$user.
"'@'".$this->dbus->Client.
"';");
813 $this->dbus->query(
"DELETE FROM mysql.db WHERE User='".
$user.
"' AND Host='".$this->dbus->Client.
"';");
814 $this->dbus->query(
"DELETE FROM mysql.user WHERE User='".
$user.
"' AND Host='".$this->dbus->Client.
"';");
815 $this->dbus->query(
"FLUSH PRIVILEGES");
817 $db->query(
"DELETE FROM dbusers WHERE uid='$cuid' AND name='".
$user.
"';");
832 $this->dbus->query(
"SELECT * FROM mysql.user WHERE User='".
$user.
"' AND Host='".$this->dbus->Client.
"';");
833 if (!$this->dbus->next_record() ) {
834 $err->raise(
'mysql',_(
"This user does not exist in the MySQL/User database"));
841 foreach($dblist as
$tab){
842 $pos=strpos($tab[
'db'],
"_");
844 $this->dbus->query(
"SELECT * FROM mysql.db WHERE User='".
$user.
"' AND Host='".$this->dbus->Client.
"' AND Db='".$tab[
"db"].
"';");
846 $dbname=str_replace(
'_',
'\_',$tab[
'db']);
847 $this->dbus->query(
"SELECT * FROM mysql.db WHERE User='".
$user.
"' AND Host='".$this->dbus->Client.
"' AND Db='".$dbname.
"';");
849 if ($this->dbus->next_record()){
850 $r[]=array(
"db"=>$tab[
"db"],
"select"=>$this->dbus->f(
"Select_priv"),
"insert"=>$this->dbus->f(
"Insert_priv"),
"update"=>$this->dbus->f(
"Update_priv"),
"delete"=>$this->dbus->f(
"Delete_priv"),
"create"=>$this->dbus->f(
"Create_priv"),
"drop"=>$this->dbus->f(
"Drop_priv"),
"references"=>$this->dbus->f(
"References_priv"),
"index"=>$this->dbus->f(
"Index_priv"),
"alter"=>$this->dbus->f(
"Alter_priv"),
"create_tmp"=>$this->dbus->f(
"Create_tmp_table_priv"),
"lock"=>$this->dbus->f(
"Lock_tables_priv"),
851 "create_view"=>$this->dbus->f(
"Create_view_priv"),
852 "show_view"=>$this->dbus->f(
"Show_view_priv"),
853 "create_routine"=>$this->dbus->f(
"Create_routine_priv"),
854 "alter_routine"=>$this->dbus->f(
"Alter_routine_priv"),
855 "execute"=>$this->dbus->f(
"Execute_priv"),
856 "event"=>$this->dbus->f(
"Event_priv"),
857 "trigger"=>$this->dbus->f(
"Trigger_priv")
860 $r[]=array(
"db"=>$tab[
'db'],
"select"=>
"N",
"insert"=>
"N",
"update"=>
"N",
"delete"=>
"N",
"create"=>
"N",
"drop"=>
"N",
"references"=>
"N",
"index"=>
"N",
"alter"=>
"N",
"create_tmp"=>
"N",
"lock"=>
"N",
"create_view"=>
"N",
"show_view"=>
"N",
"create_routine"=>
"N",
"alter_routine"=>
"N",
"execute"=>
"N",
"event"=>
"N",
"trigger"=>
"N");
879 $err->log(
"mysql",
"set_user_rights");
881 $usern=addslashes(
$user);
882 $dbname=addslashes($dbn);
883 $dbname=str_replace(
'_',
'\_',$dbname);
886 for(
$i=0 ;
$i<count($rights) ;
$i++ ) {
887 switch ($rights[
$i]) {
889 $strrights.=
"SELECT,";
892 $strrights.=
"INSERT,";
895 $strrights.=
"UPDATE,";
898 $strrights.=
"DELETE,";
901 $strrights.=
"CREATE,";
907 $strrights.=
"REFERENCES,";
910 $strrights.=
"INDEX,";
913 $strrights.=
"ALTER,";
916 $strrights.=
"CREATE TEMPORARY TABLES,";
919 $strrights.=
"LOCK TABLES,";
922 $strrights.=
"CREATE VIEW,";
925 $strrights.=
"SHOW VIEW,";
927 case "create_routine":
928 $strrights.=
"CREATE ROUTINE,";
930 case "alter_routine":
931 $strrights.=
"ALTER ROUTINE,";
934 $strrights.=
"EXECUTE,";
937 $strrights.=
"EVENT,";
940 $strrights.=
"TRIGGER,";
946 $this->dbus->query(
"SELECT * FROM mysql.db WHERE User = '$usern' AND Db = '$dbname';");
947 if($this->dbus->num_rows())
948 $this->dbus->query(
"REVOKE ALL PRIVILEGES ON `$dbname`.* FROM '$usern'@'".$this->dbus->Client.
"';");
950 $strrights=substr($strrights,0,strlen($strrights)-1);
951 $this->
grant($dbname,$usern,$strrights);
953 $this->dbus->query(
"FLUSH PRIVILEGES");
958 return Array(
'select',
'insert',
'update',
'delete',
'create',
'drop',
'references',
'index',
'alter',
'create_tmp',
'lock',
'create_view',
'show_view',
'create_routine',
'alter_routine',
'execute',
'event',
'trigger');
973 $err->log(
"mysql",
"alternc_get_quota");
975 if (
isset($this->dbus[
"Host"]) && $this->dbus[
"Host"]!=
"") {
976 $p[
"mysql_host"] = $this->dbus[
"Host"];
977 $p[
"mysql_port"] = 3306;
992 $err->log(
"mysql",
"alternc_get_quota");
993 $q=Array(
"name"=>
"mysql",
"description"=>_(
"MySQL Databases"),
"used"=>0);
996 $q[
'used']=count(
$c);
1008 $err->log(
"mysql",
"alternc_add_member");
1010 $db->query(
"SELECT name,password FROM dbusers WHERE uid=$cuid AND Type='ADMIN';");
1011 if ($db->num_rows()) {
1012 $myadm=$db->f(
"name");
1015 $myadm=$cuid.
"_myadm";
1020 $db->query(
"INSERT INTO dbusers (uid,name,password,enable) VALUES ('$cuid','$myadm','$password','ADMIN');");
1035 $err->log(
"mysql",
"alternc_del_member");
1058 $_SESSION[
'PMA_single_signon_user'] =
'';
1059 $_SESSION[
'PMA_single_signon_password'] =
'';
1060 $_SESSION[
'PMA_single_signon_host'] =
'';
1073 $err->log(
"mysql",
"export");
1074 $db->query(
"SELECT login, pass, db, bck_mode, bck_dir, bck_history, bck_gzip FROM db WHERE uid='$cuid';");
1075 if ($db->next_record()) {
1077 $str.=
" <login>".$db->Record[
"login"].
"</login>\n";
1078 $str.=
" <pass>".$db->Record[
"pass"].
"</pass>\n";
1080 $filename=$tmpdir.
"/mysql.".$db->Record[
"db"].
".sql.gz";
1081 $str.=
" <database>".($db->Record[
"db"]).
"</database>\n";
1082 $str.=
" <password>".($db->Record[
"pass"]).
"</password>\n";
1083 if ($s[
"bck_mode"]!=0) {
1084 $str.=
" <backup-mode>".($db->Record[
"bck_mode"]).
"</backup-mode>\n";
1085 $str.=
" <backup-dir>".($db->Record[
"bck_dir"]).
"</backup-dir>\n";
1086 $str.=
" <backup-history>".($db->Record[
"bck_history"]).
"</backup-history>\n";
1087 $str.=
" <backup-gzip>".($db->Record[
"bck_gzip"]).
"</backup-gzip>\n";
1089 }
while ($db->next_record());
1103 $err->log(
"mysql",
"export_data");
1104 $db->query(
"SELECT db.login, db.pass, db.db, dbusers.name FROM db,dbusers WHERE db.uid='$cuid' AND dbusers.uid=db.uid;");
1108 $err->raise(
'mysql',_(
"The directory could not be created"));
1112 while($db->next_record()){
1113 $filename=$dir.
"mysql.".$db->Record[
"db"].
".".date(
"H:i:s").
".sql.gz";
1114 exec (
"/usr/bin/mysqldump --defaults-file=/etc/alternc/my.cnf --add-drop-table --allow-keywords -Q -f -q -a -e ".escapeshellarg($db->Record[
"db"]).
" |/bin/gzip >".escapeshellarg($filename));
1130 $err->log(
"mysql",
"get_dbus_size",$db_host);
1132 # We create the object with empty parameters
1134 # Modify the object with right parameters
1135 $this->dbus->HumanHostname = $db_name;
1136 $this->dbus->Host = $db_host;
1137 $this->dbus->User = $db_login;
1138 $this->dbus->Password = $db_password;
1139 $this->dbus->Client = $db_client;
1141 $this->dbus->query(
"show databases;");
1144 while($this->dbus->next_record()) {
1145 $dbname=$this->dbus->f(
"Database");
1146 $c=mysql_query(
"SHOW TABLE STATUS FROM $dbname;");
1148 while (
$d=mysql_fetch_array(
$c)) {
1149 $size+=
$d[
"Data_length"]+
$d[
"Index_length"];
1151 $res[
"$dbname"]=
"$size";