评论

收藏

[MySQL] 在Xen的DomU中安装MySQL

数据库 数据库 发布于:2021-07-05 09:01 | 阅读数:496 | 评论:0

  为了做一个关于数据库稳定性的实验,打算在Xen的DomU(Linux)中装一个MySQL,本以为一件很简单的事情,结果纠结了我两天!
开始是在Dom0中安装MySQL,非常顺利。接下来就是在DmoU中安装MySQL了,起先用如下方法:
         1、下载MySQL的安装文件
  安装MySQL需要下面两个文件:
  MySQL-server-4.0.16-0.i386.rpm   
  MySQL-client-4.0.16-0.i386.rpm
  下载地址为:www.mysql.com/downloads/,打开此网页,下拉网页找到“Linux x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的上述两个rpm文件。
  2、安装MySQL
  rpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。该命令在安装时常用的参数是–ivh,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。这个符号将持续到安装完成后才停止。
  1)安装服务器端
  在有两个rmp文件的目录下运行如下命令:
  [root@test1 local]# rpm -ivh MySQL-server-4.0.16-0.i386.rpm
  显示如下信息。
  warning: MySQL-server-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
  Preparing...       ########################################### [100%]
  1:MySQL-server     ########################################### [100%]
  。。。。。。(省略显示)
  /usr/bin/mysqladmin -u root password \'new-password\'
  /usr/bin/mysqladmin -u root -h test1 password \'new-password\'
  。。。。。。(省略显示)
  Starting mysqld daemon with databases from /var/lib/mysql
  如出现如上信息,服务端安装完毕。测试是否成功可运行netstat看Mysql端口是否打开,如打开表示服务已经启动,安装成功。Mysql默认的端口是3306。
  [root@test1 local]# netstat -nat
  Active Internet connections (servers and established)
  Proto Recv-Q Send-Q Local Address    Foreign Address   State   
  tcp  0  0 0.0.0.0:3306   0.0.0.0:*    LISTEN   
  上面显示可以看出MySQL服务已经启动。
  2)安装客户端
  运行如下命令:
  [root@test1 local]# rpm -ivh MySQL-client-4.0.16-0.i386.rpm
  warning: MySQL-client-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
  Preparing...    ########################################### [100%]
  1:MySQL-client########################################### [100%]
  显示安装完毕。
  用下面的命令连接mysql,测试是否成功。
以上都没有什么问题,但是一旦输入mysql命令想要登录时,就告知mysql“Access denied for user 'root'@'localhost'”
  在网上看了解决方法:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
结果还是无法登陆!
然后试图用yum indtall mysql*(一定要是mysql*)来安装,过程倒是很简单,大概要安装35个包左右。(注意第一种方法启动MySQL服务名字是mysql,第二种MySQL服务的名字是mysqld)
可是还是不能正常登陆,几经周折之后,决定先在Dom0里面装好MySQL,然后用Dom0的文件系统做一个DomU的镜像,然后启动DomU,按照上面的方法设置好root用户的密码之后便可以远程登录到DomU的MySQL数据库了。

安装好之后作了如下测试:
用一个客户端往MySQL中不断插入数据,若突然用xm shutdown或是service mysqld stop来中断MySQL的话,数据可以完整的被插入(115011条);若用xm destroy来中断MySQL的话,则发现会有大量数据丢失(应插入:112069,实际插入28920)。



  
关注下面的标签,发现更多相似文章