MySQL ma'lumotlar bazasiStatus va versiya raqami ma'lumotlar jadvali tuzilishi ma'lumotlarini qanday tekshirish mumkin?

MySQL metadata

Siz MySQL haqida quyidagi uch turdagi ma'lumotlarni bilishni xohlashingiz mumkin:

  • So'rov natijalari haqida ma'lumot: SELECT, UPDATE yoki DELETE bayonotidan ta'sirlangan yozuvlar soni.
  • Ma'lumotlar bazalari va ma'lumotlar jadvallari haqida ma'lumot: Ma'lumotlar bazasi va ma'lumotlar jadvalining strukturaviy ma'lumotlarini o'z ichiga oladi.
  • MySQL server ma'lumotlari: Ma'lumotlar bazasi serverining joriy holatini, versiya raqamini va boshqalarni o'z ichiga oladi.

MySQL buyruq satrida biz yuqoridagi server ma'lumotlarini osongina olishimiz mumkin.Ammo Perl yoki PHP kabi skript tilidan foydalansangiz, uni olish uchun ma'lum bir interfeys funksiyasini chaqirishingiz kerak.Keyinchalik biz batafsil tanishtiramiz.


So'rov bayonotiga ta'sir qiladigan yozuvlar sonini oling

PERL misoli

DBI skriptlarida bayonotga ta'sir qiladigan yozuvlar soni do( ) yoki execute( ) funktsiyalari bilan qaytariladi:

# 方法 1
# 使用do( ) 执行  $query 
my $count = $dbh->do ($query);
# 如果发生错误会输出 0
printf "%d 条数据被影响\n", (defined ($count) ? $count : 0);
# 方法 2
# 使用prepare( ) 及 execute( ) 执行  $query 
my $sth = $dbh->prepare ($query);
my $count = $sth->execute ( );
printf "%d 条数据被影响\n", (defined ($count) ? $count : 0);

PHP misoli

PHP da siz so'rov ta'sir qiladigan yozuvlar sonini olish uchun mysqli_affected_rows( ) funksiyasidan foydalanishingiz mumkin.

$result_id = mysqli_query ($conn_id, $query);
# 如果查询失败返回 
$count = ($result_id ? mysqli_affected_rows ($conn_id) : 0);
print ("$count 条数据被影响\n");

Ma'lumotlar bazalari va ma'lumotlar jadvallari ro'yxati

MySQL serverida ma'lumotlar bazalari va jadvallar ro'yxatini osongina olishingiz mumkin.Agar sizda etarli ruxsat bo'lmasa, natija null bo'ladi.
Ma'lumotlar bazalari va ma'lumotlar jadvallari ro'yxatini olish uchun JADVALLARNI KO'RSATISH yoki MA'LUMOTLAR BAZALARINI KO'RSATISH bayonotidan ham foydalanishingiz mumkin.

PERL misoli

# 获取当前数据库中所有可用的表。
my @tables = $dbh->tables ( );
foreach $table (@tables ){
   print "表名 $table\n";
}

PHP misoli

Quyidagi misol MySQL serveridagi barcha ma'lumotlar bazalarini chiqaradi:

Barcha ma'lumotlar bazalarini ko'rish

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
$db_list = mysqli_query($conn, 'SHOW DATABASES');
while ($db = mysqli_fetch_object($db_list))
{
 echo $db->Database . "<br />";
}
mysqli_close($conn);
?>

Server metama'lumotlarini oling

Quyidagi buyruq iboralari MySQL buyruq satrida yoki PHP skriptlari kabi skriptlarda ishlatilishi mumkin.

Qat'iyliktavsif
VERSIYANI TANLASH( )Server versiyasi haqida ma'lumot
MA'LUMOTLAR BAZASINI TANLASH( )joriy ma'lumotlar bazasi nomi (yoki bo'sh qaytish)
FOYDALANUVCHI TANLASH( )joriy foydalanuvchi nomi
STATUSNI KO'RSATISHserver holati
O'ZGARCHILARNI KO'RSATISHServer konfiguratsiyasi o'zgaruvchilari