parent
700deb6746
commit
f580c129ca
8 changed files with 339 additions and 0 deletions
@ -0,0 +1,240 @@ |
|||||||
|
-- -------------------------------------------------------- |
||||||
|
-- SQL Commands to set up the pmadb as described in Documentation.html. |
||||||
|
-- |
||||||
|
-- This file is meant for use with MySQL 5 and above! |
||||||
|
-- |
||||||
|
-- This script expects the user pma to already be existing. If we would put a |
||||||
|
-- line here to create him too many users might just use this script and end |
||||||
|
-- up with having the same password for the controluser. |
||||||
|
-- |
||||||
|
-- This user "pma" must be defined in config.inc.php (controluser/controlpass) |
||||||
|
-- |
||||||
|
-- Please don't forget to set up the tablenames in config.inc.php |
||||||
|
-- |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Privileges |
||||||
|
-- |
||||||
|
-- (activate this statement if necessary) |
||||||
|
-- GRANT SELECT, INSERT, DELETE, UPDATE ON `phpmyadmin`.* TO |
||||||
|
-- 'pma'@localhost; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_bookmark` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_bookmark` ( |
||||||
|
`id` int(11) NOT NULL auto_increment, |
||||||
|
`dbase` varchar(255) NOT NULL default '', |
||||||
|
`user` varchar(255) NOT NULL default '', |
||||||
|
`label` varchar(255) COLLATE utf8_general_ci NOT NULL default '', |
||||||
|
`query` text NOT NULL, |
||||||
|
PRIMARY KEY (`id`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Bookmarks' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_column_info` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_column_info` ( |
||||||
|
`id` int(5) unsigned NOT NULL auto_increment, |
||||||
|
`db_name` varchar(64) NOT NULL default '', |
||||||
|
`table_name` varchar(64) NOT NULL default '', |
||||||
|
`column_name` varchar(64) NOT NULL default '', |
||||||
|
`comment` varchar(255) COLLATE utf8_general_ci NOT NULL default '', |
||||||
|
`mimetype` varchar(255) COLLATE utf8_general_ci NOT NULL default '', |
||||||
|
`transformation` varchar(255) NOT NULL default '', |
||||||
|
`transformation_options` varchar(255) NOT NULL default '', |
||||||
|
PRIMARY KEY (`id`), |
||||||
|
UNIQUE KEY `db_name` (`db_name`,`table_name`,`column_name`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Column information for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_history` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_history` ( |
||||||
|
`id` bigint(20) unsigned NOT NULL auto_increment, |
||||||
|
`username` varchar(64) NOT NULL default '', |
||||||
|
`db` varchar(64) NOT NULL default '', |
||||||
|
`table` varchar(64) NOT NULL default '', |
||||||
|
`timevalue` timestamp NOT NULL, |
||||||
|
`sqlquery` text NOT NULL, |
||||||
|
PRIMARY KEY (`id`), |
||||||
|
KEY `username` (`username`,`db`,`table`,`timevalue`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='SQL history for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_pdf_pages` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_pdf_pages` ( |
||||||
|
`db_name` varchar(64) NOT NULL default '', |
||||||
|
`page_nr` int(10) unsigned NOT NULL auto_increment, |
||||||
|
`page_descr` varchar(50) COLLATE utf8_general_ci NOT NULL default '', |
||||||
|
PRIMARY KEY (`page_nr`), |
||||||
|
KEY `db_name` (`db_name`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='PDF relation pages for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_recent` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_recent` ( |
||||||
|
`username` varchar(64) NOT NULL, |
||||||
|
`tables` text NOT NULL, |
||||||
|
PRIMARY KEY (`username`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Recently accessed tables' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_table_uiprefs` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_table_uiprefs` ( |
||||||
|
`username` varchar(64) NOT NULL, |
||||||
|
`db_name` varchar(64) NOT NULL, |
||||||
|
`table_name` varchar(64) NOT NULL, |
||||||
|
`prefs` text NOT NULL, |
||||||
|
`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, |
||||||
|
PRIMARY KEY (`username`,`db_name`,`table_name`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Tables'' UI preferences' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_relation` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_relation` ( |
||||||
|
`master_db` varchar(64) NOT NULL default '', |
||||||
|
`master_table` varchar(64) NOT NULL default '', |
||||||
|
`master_field` varchar(64) NOT NULL default '', |
||||||
|
`foreign_db` varchar(64) NOT NULL default '', |
||||||
|
`foreign_table` varchar(64) NOT NULL default '', |
||||||
|
`foreign_field` varchar(64) NOT NULL default '', |
||||||
|
PRIMARY KEY (`master_db`,`master_table`,`master_field`), |
||||||
|
KEY `foreign_field` (`foreign_db`,`foreign_table`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Relation table' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_table_coords` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_table_coords` ( |
||||||
|
`db_name` varchar(64) NOT NULL default '', |
||||||
|
`table_name` varchar(64) NOT NULL default '', |
||||||
|
`pdf_page_number` int(11) NOT NULL default '0', |
||||||
|
`x` float unsigned NOT NULL default '0', |
||||||
|
`y` float unsigned NOT NULL default '0', |
||||||
|
PRIMARY KEY (`db_name`,`table_name`,`pdf_page_number`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Table coordinates for phpMyAdmin PDF output' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_table_info` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_table_info` ( |
||||||
|
`db_name` varchar(64) NOT NULL default '', |
||||||
|
`table_name` varchar(64) NOT NULL default '', |
||||||
|
`display_field` varchar(64) NOT NULL default '', |
||||||
|
PRIMARY KEY (`db_name`,`table_name`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Table information for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_designer_coords` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_designer_coords` ( |
||||||
|
`db_name` varchar(64) NOT NULL default '', |
||||||
|
`table_name` varchar(64) NOT NULL default '', |
||||||
|
`x` INT, |
||||||
|
`y` INT, |
||||||
|
`v` TINYINT, |
||||||
|
`h` TINYINT, |
||||||
|
PRIMARY KEY (`db_name`,`table_name`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='Table coordinates for Designer' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_tracking` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_tracking` ( |
||||||
|
`db_name` varchar(64) NOT NULL, |
||||||
|
`table_name` varchar(64) NOT NULL, |
||||||
|
`version` int(10) unsigned NOT NULL, |
||||||
|
`date_created` datetime NOT NULL, |
||||||
|
`date_updated` datetime NOT NULL, |
||||||
|
`schema_snapshot` text NOT NULL, |
||||||
|
`schema_sql` text, |
||||||
|
`data_sql` longtext, |
||||||
|
`tracking` set('UPDATE','REPLACE','INSERT','DELETE','TRUNCATE','CREATE DATABASE','ALTER DATABASE','DROP DATABASE','CREATE TABLE','ALTER TABLE','RENAME TABLE','DROP TABLE','CREATE INDEX','DROP INDEX','CREATE VIEW','ALTER VIEW','DROP VIEW') default NULL, |
||||||
|
`tracking_active` int(1) unsigned NOT NULL default '1', |
||||||
|
PRIMARY KEY (`db_name`,`table_name`,`version`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM ROW_FORMAT=COMPACT COMMENT='Database changes tracking for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
||||||
|
-- -------------------------------------------------------- |
||||||
|
|
||||||
|
-- |
||||||
|
-- Table structure for table `pma_userconfig` |
||||||
|
-- |
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `pma_userconfig` ( |
||||||
|
`username` varchar(64) NOT NULL, |
||||||
|
`timevalue` timestamp NOT NULL, |
||||||
|
`config_data` text NOT NULL, |
||||||
|
PRIMARY KEY (`username`) |
||||||
|
) |
||||||
|
ENGINE=MyISAM COMMENT='User preferences storage for phpMyAdmin' |
||||||
|
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; |
||||||
|
|
@ -0,0 +1 @@ |
|||||||
|
phpmyadmin |
@ -0,0 +1 @@ |
|||||||
|
phpmyadmin |
@ -0,0 +1,28 @@ |
|||||||
|
{ |
||||||
|
my $rec = $DB->get('phpmyadmin') |
||||||
|
|| $DB->new_record('phpmyadmin', {type => 'webapp'}); |
||||||
|
my $pw = $rec->prop('DbPassword'); |
||||||
|
if (not $pw or length($pw) < 57){ |
||||||
|
use MIME::Base64 qw(encode_base64); |
||||||
|
|
||||||
|
$pw = "not set due to error"; |
||||||
|
if ( open( RANDOM, "/dev/urandom" ) ){ |
||||||
|
my $buf; |
||||||
|
# 57 bytes is a full line of Base64 coding, and contains |
||||||
|
# 456 bits of randomness - given a perfectly random /dev/random |
||||||
|
if ( read( RANDOM, $buf, 57 ) != 57 ){ |
||||||
|
warn("Short read from /dev/random: $!"); |
||||||
|
} |
||||||
|
else{ |
||||||
|
$pw = encode_base64($buf); |
||||||
|
chomp $pw; |
||||||
|
} |
||||||
|
close RANDOM; |
||||||
|
} |
||||||
|
else{ |
||||||
|
warn "Could not open /dev/urandom: $!"; |
||||||
|
} |
||||||
|
$rec->set_prop('DbPassword', $pw); |
||||||
|
} |
||||||
|
} |
||||||
|
|
@ -0,0 +1 @@ |
|||||||
|
PERMS=0750 |
@ -0,0 +1,47 @@ |
|||||||
|
{ |
||||||
|
my $db = $phpmyadmin{'DbName'} || 'phpmyadmin'; |
||||||
|
my $user = $phpmyadmin{'DbUser'} || 'phpmyadmin'; |
||||||
|
my $pass = $phpmyadmin{'DbPassword'} || 'phpmyadmin'; |
||||||
|
|
||||||
|
my $dbstruct = `rpm -qd ipasserelle-phpmyadmin | grep phpmyadmin.sql`; |
||||||
|
|
||||||
|
$OUT .= <<"END"; |
||||||
|
#! /bin/sh |
||||||
|
if [ ! -d /var/lib/mysql/$db ]; then |
||||||
|
/usr/bin/mysql -e 'create database $db' |
||||||
|
/usr/bin/mysql $db < $dbstruct |
||||||
|
fi |
||||||
|
|
||||||
|
/usr/bin/mysql <<EOF |
||||||
|
USE mysql; |
||||||
|
|
||||||
|
REPLACE INTO user ( |
||||||
|
host, |
||||||
|
user, |
||||||
|
password) |
||||||
|
VALUES ( |
||||||
|
'localhost', |
||||||
|
'$user', |
||||||
|
PASSWORD ('$pass')); |
||||||
|
|
||||||
|
|
||||||
|
REPLACE INTO db ( |
||||||
|
host, |
||||||
|
db, |
||||||
|
user, |
||||||
|
select_priv, insert_priv, update_priv, delete_priv, |
||||||
|
create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv, |
||||||
|
grant_priv, lock_tables_priv, references_priv) |
||||||
|
VALUES ( |
||||||
|
'localhost', |
||||||
|
'$db', |
||||||
|
'$user', |
||||||
|
'Y', 'Y', 'Y', 'Y', |
||||||
|
'Y', 'Y', 'Y', 'Y', 'Y', |
||||||
|
'N', 'Y', 'Y'); |
||||||
|
|
||||||
|
FLUSH PRIVILEGES; |
||||||
|
EOF |
||||||
|
END |
||||||
|
} |
||||||
|
|
Loading…
Reference in new issue