Linux下安装MySQL(rpm方式)

   之前一直想捣鼓以源码包的形式安装MySQL,但是不管我下的什么版本的MySQL的tar包,解压都会出错。哎,索性还是走回rpm的安装方式吧。

   1:在安装rpm之前,需要把Linux自带的MySQL以及相关的连接文件都卸载掉。方式是:

  

rpm -qa | grep -c mysql

 

     其中-qa 表示查询全部的rpm包 ;grep -c mysql表示只查询mysql相关的。-c表示不区分大小写。

     不出意外的话应该会有很多种包,这时应该先卸载那个server文件,然后是其他的驱动连接,最后才是mysql的包文件。

     2:删除mysql组和mysql用户

    

userdel mysql;
groupdel mysql;

 

     3:重新添加mysql用户和mysql组

    

groupadd mysql
useradd mysql -g mysql 

   

    其中-g表示添加到哪个组。

   

     4: 最后去MySQL官方网站下载Linux版本的server和client的rpm文件。分别执行rpm -ivh **.rpm。

      安装完毕,但此时还需要做一些初始化修正操作。

         第一步:输入mysql。

         不出意外的话,会提示

          ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

         这时因为mysql.sock的权限不对。输入下面的命令来修正:

   

chown -R mysql:mysql /var/lib/mysql

 

      这里-R表示递归该文件目录下面所有的文件。

      mysql:mysql表示将这个文件的拥有者权限赋给mysql用户,及使用群体为mysql组的全体用户

            然后重启MySQL服务:

       

/etc/init.d/mysqld restart

 

        第二步设置root用户名和密码, 默认情况下,初始root密码为空

        在shell终端执行

       

mysqladmin -u root -p 123456

 

        第三步:建立一个普通用户以及一个远程客户端的客户。

         进入mysql命令行,输入:

         

use mysql;
select host,username,password from user;

 

         会出现如下的图片(取决不同的机器和mysql版本):

   

 

 

            删掉其中不需要的用户和行。例如没有用户名的行等等。

            新建一个本地普通用户以及远程连接用户(供Windows客户端使用MySQL可视化工具连接时使用).

     

grant all privileges on test.* to chenwu@localhost identified by '123456';

 

          然后输入:

     

use mysql;
select host,user,password from user;

 

         看是不是多了一条新的用户?然后建立一个远程用户:

   

grant all privileges on test.* to chenwu@**.**.**.** identified by '123456';

 

           这样远程客户端就可以通过这个用户连接了。

           简单介绍下这里的命令:

           grant all privileges 表示将test库里所有表的所有权限都赋给chenwu用户,这些权限包括select,insert,update,delete等等。

            你也可以仅仅限制一部分,比如只赋insert权限等等。

            当然你也可以修改用户密码等,方式和更新普通的用户一样.

  

//修改密码
update user set password=password('新密码') where user='chenwu'
//添加新用户
insert into user(host,user,password) values('新用户IP','新用户名',password('新用户密码'));

 

至此mysql在Linux上的安装完毕了。下次我会尽量写一个源码包的安装方式。

posted @ 2011-05-31 15:52  老去的JAVA程序员  阅读(225)  评论(0编辑  收藏  举报