/ 中存储网

Linux系统中MySQL数据库的安装与管理

2014-07-13 15:54:15 来源:中存储网

由于要在linux下建设网站,必须安装mysql

一. 安装服务器端

首先,强烈建议装个高级的系统,用光盘自带的安装。

另外,贴个二进制版的安装方法

1. 从http://www.mysql.com下载二进制版的Mysql安装包 //这个MYSQL是二进制版的,不用编译
2. # chmod 755 mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz //
3. # tar xfz mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz //将解压后生成的目录,复制到/usr/local/下并改名为mysql
4. # groupadd mysql
# useradd mysql -g mysql
// 建立mysql组
//建立mysql用户并且加入到mysql组中
5. # cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf  在 support-files目录下有4个模版文件,我们选择其中一个座位Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数)
6. # cd /usr/local/mysql
# ./scripts/mysql_install_db --user=mysql 
进入mysql目录 
//初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限
7. # chown -R root . //设定root能访问/usr/local/mysql
8. # chown -R mysql data  //设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,在mysql_install_db时产生。 
9. # chown -R mysql data/.  //设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件 
10. # chgrp -R mysql . //设定mysql组能够访问/usr/local/mysql
11. # /usr/local/mysql/bin/mysqld_safe --user=mysql & 运行mysql
如果没有问题的话,应该会出现类似这样的提示:
[1] 42264
# Starting mysqld daemon with databases from /usr/local/mysql/var 
如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置。大多数问题是权限设置不正确引起的。
12. 用如下命令修改MYSQL密码
# /usr/local/mysql/bin/mysqladmin -u root password yourpassword
//默认安装密码为空,为了安全你必须马上修改. 
13. # cp support-files/mysql.server /etc/rc.d/init.d/mysqld 
# chmod 700 /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --level 345 mysqld on
//copy编译目录的一个脚本 
//设置使mysql每次启动都能自动运行
14. # service mysqld start
# netstat -atln 
//启动mysqld服务
//查看3306端口是否打开。要注意在防火墙中开放该端口。 

二. 安装客户端 
   运行如下命令: 
   [root@test1 local]# rpm -ivh MySQL-client-5.0.9-0.i386.rpm 
   warning: MySQL-client-5.0.9-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 
   Preparing...    ########################################### [100%] 
   1:MySQL-client  ########################################### [100%] 
   显示安装完毕。

          最后别忘了启动mysqld这个服务,X下启动方便又快捷:)
   用下面的命令连接mysql,测试是否成功。 
三. 登录MySQL 

   登录MySQL的命令是mysql, mysql 的使用语法如下: 
   mysql [-u username] [-h host] [-p[password]] [dbname] 
   username 与 password 分别是 MySQL 的用户名与密码,mysql的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于初始没有密码,第一次进时只需键入mysql即可。 
   [root@test1 local]# mysql 
   Welcome to the MySQL monitor. Commands end with ; or /g. 
   Your MySQL connection id is 1 to server version: 4.0.16-standard 
   Type 'help;' or '/h' for help. Type '/c' to clear the buffer. 
   mysql> 
   出现了“mysql>”提示符,恭喜你,安装成功! 
   增加了密码后的登录格式如下: 
   mysql -u root -p 
   Enter password: (输入密码) 
   其中-u后跟的是用户名,-p要求输入密码,回车后在输入密码处输入密码。 

注意:这个mysql文件在/usr/bin目录下,与后面讲的启动文件/etc/init.d/mysql不是一个文件。 

四、MySQL的几个重要目录 

   MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 Linux本身的目录结构就比较复杂,如果搞不清楚MySQL的安装目录那就无从谈起深入学习。 

   下面就介绍一下这几个目录。 

   1、数据库目录 
   /var/lib/mysql/ 

   2、配置文件 
   /usr/share/mysql(mysql.server命令及配置文件) 

   3、相关命令 
   /usr/bin(mysqladmin mysqldump等命令) 

   4、启动脚本 
   /etc/rc.d/init.d/(启动脚本文件mysql的目录) 
五、修改登录密码 

   MySQL默认没有密码,安装完毕增加密码的重要性是不言而喻的。 

   1、命令 
   usr/bin/mysqladmin -u root password 'new-password' 
   格式:mysqladmin -u用户名 -p旧密码 password 新密码 

   2、例子 
   例1:给root加个密码123456。 
   键入以下命令 : 
   [root@test1 local]# /usr/bin/mysqladmin -u root password 123456 
   注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。 

   3、测试是否修改成功 
   1)不用密码登录 
   [root@test1 local]# mysql 
   ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO) 
   显示错误,说明密码已经修改。 
   2)用修改后的密码登录 
   [root@test1 local]# mysql -u root -p 
   Enter password: (输入修改后的密码123456) 
   Welcome to the MySQL monitor. Commands end with ; or /g. 
   Your MySQL connection id is 4 to server version: 4.0.16-standard 
   Type 'help;' or '/h' for help. Type '/c' to clear the buffer. 
   mysql> 
   成功! 
   这是通过mysqladmin命令修改口令,也可通过修改库来更改口令。 

六、启动与停止 

   1、启动 
   MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。 
   [root@test1 init.d]# /etc/init.d/mysql start 

   2、停止 
   /usr/bin/mysqladmin -u root -p shutdown 

   3、自动启动 
   1)察看mysql是否在自动启动列表中 
   [root@test1 local]# /sbin/chkconfig –list 
   2)把MySQL添加到你系统的启动服务组里面去 
   [root@test1 local]# /sbin/chkconfig – add mysql 
   3)把MySQL从启动服务组里面删除。 
   [root@test1 local]# /sbin/chkconfig – del mysql 
七、更改MySQL目录 

MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步: 

   1、home目录下建立data目录 
   cd /home 
   mkdir data 

   2、把MySQL服务进程停掉: 
   mysqladmin -u root -p shutdown 

   3、把/var/lib/mysql整个目录移到/home/data 
   mv /var/lib/mysql /home/data/ 
   这样就把MySQL的数据文件移动到了/home/data/mysql下 

   4、找到my.cnf配置文件 
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下: 
   [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 

   5、编辑MySQL的配置文件/etc/my.cnf 
   为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。 修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下: 
   vi  my.cnf    (用vi工具编辑my.cnf文件,找到下列数据修改之) 
   # The MySQL server 
    [mysqld] 
    port   = 3306 
    #socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行) 
    socket  = /home/data/mysql/mysql.sock   (加上此行) 

   6、修改MySQL启动脚本/etc/rc.d/init.d/mysql 
最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。 
   [root@test1 etc]# vi /etc/rc.d/init.d/mysql 
   #datadir=/var/lib/mysql    (注释此行) 
   datadir=/home/data/mysql   (加上此

...