linux下 mysql 的卸载和安装
一、前期准备:
??? 1.由于redhat Enterprise 5 中自带一个mysql的版本,如果在安装linux前未选择mysql的安装此步就可跳过,因为我当时安装了现在将其卸载 ,步骤如下:
?????? a. 查找已安装的myslq 版本:
??????? #rpm? -qa | grep? mysql (注意大小写,如果mysql 不行就换MySQL)
??????? 在屏幕上将显示已安装的mysql包名如:mysql-5.0.22-2.1.0.1 ;
?????? b. 将搜索出的包名卸载:
??????? #rpm -e? --nodeps mysql-5.0.22-2.1.0.1 (nodeps表示强制删除)
?????? c. 再次查找该包名,如果没有结果输出则表明已将该版本的mysql卸载了 ;
?
?? 2. 准备安装资源,如下:
????? a. perl-DBI-1.5.2-1.fc6.i386.rpm(该包为是安装mysql的依赖,没它mysql安装不起,查看是否安装,如果安装了就不需要了,可以通过 #rpm -qa | grep perl* 查看是否已经安装,该包在linux系统盘上可以找到,以下提供该包下载)
?
??????? b. MySQL-server-community-5.0.67-0.rhel5.rpm 和 MySQL-client-community-5.0.67-0.rhel5.rpm
????????? (可以从http://dev.mysql.com/downloads/mysql/5.0.html 下载相应linux相应的版本)
?
??????? c. 准备好相应的安装包后将其利用leapFTP 通过 vsftp 服务器 上传到 linux系统/var/ftp/pub上;
?
?? 3. 开始安装:
?????? a. 先安装 perl-DBI-1.5.2-1.fc6.i386.rpm
????????? #rpm -ivh perl-DBI-1.5.2-1.fc6.i386.rpm
????????? (查看是否安装成功 #rpm -qa | grep perl-DBI* )
?
??????? b. 安装好perl,接着先安装 mysql server版
?????????? #rpm? -ivh? MySQL-server-community-5.0.67-0.rhel5.rpm
????????? (查看是否安装成功 #rpm -qa | MySQL ,查看该进程是否启动 #ps -ef | grep MySQL ,由于安装好server版后就已经启动了)
?
???????? c. 安装好server版,开始接着安装 client版:
???????? #rpm? -ivh MySQL-client-community-5.0.67-0.rhel5.rpm
???????? (查看是否安装成功 #rpm -qa | MySQL )
?
??????? d. 好了到此就已经安装完毕,测试是否可以运行:
????????? #mysql
????????? 将出现 mysql> 命令符安装成功,由于是默认用户为root没有密码所以可以直接进入;
?
??????? 以上为实践操作,希望有所帮助,一定要注意安装的先后顺序噢。
?
?
???????? 2009-06-05 补充:MySQL二进制版本的安装及卸载
?
???????? 二进制版本的mysql是已经编译好的,无需 configure ,make? make install 等步骤,只需配置一? 下即可使用,卸载也方便,直接删除即可;现在以mysql-standard-4.1.13-pc-linux-gnu-i686.tar.gz 版本做介绍 :
?
????????? 1. ? # chmod 755? mysql-standard-4.1.13-pc-linux-gnu-i686.tar.gz //改变该文件为可执行权限
?
????????? 2. # tar -xvzf? mysql-standard-4.1.13-pc-linux-gnu-i686.tar.gz ??? //将解压后生成的目录,复制到/usr/local/下并改名为mysql
?
???????? 3.? # groupadd mysql ?? // 建立mysql组
???????????? # useradd mysql -g mysql ??? //建立mysql用户并且加入到mysql组中
?
????????? 4. # cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
??? 在 support-files目录下有4个模版文件,我们选择其中一个座位Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数)
?
?????? 5. # cd /usr/local/mysql // 进入mysql目录
????????? # ./scripts/mysql_install_db --user=mysql ? ? //初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限
?
?????? 6.? # chown -R mysql data ?? //设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,mysql_install_db时产生。
?????? 7.# chown -R mysql data/. ? ? //设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件
?????? 8. # chgrp -R mysql . ?? //设定mysql组能够访问/usr/local/mysql
?????? 9. # /usr/local/mysql/bin/mysqld_safe --user=mysql &
?????? 10. cd /usr/local/mysql/bin? //进入 bin目录
??????????
?????? 11. #mysql? //运行mysq命令
?
???????? 如果没有没有启动 或出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock'
?
?????????? 解决方法: #cd /usr/local/mysql/support-files //进入该目录
?????????????????????????????? #./mysql.server start? //启动即可 既可在生成 /tmp/mysql.sock
???????
??????????? 如果 /tmp/mysql.sock 无该文件存在,且mysql是处于 开启的状态 ?
?
?????????? 解决方法: #netstat -an | grep 3306 ? //查看 3306端口
?????????????????????? #ps -ef | grep mysql? // 查找 mysql 进程
?????????????????????? # kill -9? 进程号? ? //强制删除mysql的进程号
?
????????????????????????????????? #./mysql.server start ? //启动即可 既可在生成 /tmp/mysql.sock
?
??????????? 如果在任意路径下如数mysql命令得到的无该命令咋办呢?
?
??????????? 解决方法:修改 /etc/profile 文件?? 在文件中加入?
?????????????????????? PATH=$PATH:/usr/local/mysql/bin/
?????????????????????? export PATH? (保存即可退出执行 source /etc/profile)?
??????????????????? 以上操作完既可以 在任意目录执行# mysql 命令
?
??????????????? 如果想执行 service mysql start or restart stop 命令咋办的? 在不能老#./mysql.server start
????????????????????
???????????? 解决方法: 将 mysql.server? 复制一份到 /etc/rc.d/init.d 下并改名 mysql 或 建个连接文件
???????????? 假设当前目录为 /etc/rc.d/init.d
???????????? 如: #cp? /usr/local/mysql/support-files/mysql.server? mysql (复制)
???????????? 或 : #ln -s /usr/local/mysql/support-files/mysql.server? mysql (建立连接文件)
???????????? 完成以上操作即可? 执行 service mysql start (or restart stop)
?
???? 用如下命令修改MYSQL密码
# /usr/local/mysql/bin/mysqladmin -u root password yourpassword ??? //默认安装密码为空,为了安全你必须马上修改
# chmod 700 /etc/init.d/mysql
# chkconfig --add mysqld
# chkconfig --level 345 mysql on ??? //copy编译目录的一个脚本设置使mysql每次启动都能自动运行
?# service mysql start
# netstat -atln
//启动mysql服务
//查看3306端口是否打开。要注意在防火墙中开放该端口。?