linux下mysql的卸载、安装全过程
lrfz008
|
1#
lrfz008 发表于 2008-03-27 17:01
linux下mysql的卸载、安装全过程
卸载mysql
1、查找以前是否装有mysql 命令:rpm -qa|grep -i mysql 可以看到mysql的两个包: mysql-4.1.12-3.RHEL4.1 mysqlclient10-3.23.58-4.RHEL4.1 2、删除mysql 删除命令:rpm -e --nodeps 包名 ( rpm -ev mysql-4.1.12-3.RHEL4.1 ) 3、删除老版本mysql的开发头文件和库 命令:rm -fr /usr/lib/mysql rm -fr /usr/include/mysql 注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除 rm -f /etc/my.cnf rm -fr /var/lib/mysql 安装mysql 安装前准备:两个rpm包 MySQL-client-5.1.20-0.glibc23.i386.rpm MySQL-server-5.1.20-0.glibc23.i386.rpm 1、安装服务端: 命令:rpm -ivh MySQL-server-5.1.20-0.glibc23.i386.rpm 安装成功会出现.... warning: MySQL-server-5.1.20-0.glibc23.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%] 1:MySQL-server ########################################### [100%] 080220 13:58:27 [Note] Plugin 'InnoDB' disabled by command line option 080220 13:58:28 [Note] Plugin 'InnoDB' disabled by command line option PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /usr/bin/mysqladmin -u root password 'new-password' /usr/bin/mysqladmin -u root -h localhost.localdomain password 'new-password' See the manual for more instructions. Please report any problems with the /usr/bin/mysqlbug script! The latest information about MySQL is available on the web at http://www.mysql.com Support MySQL by buying support/licenses at http://shop.mysql.com Starting MySQL.[ OK ] 2、安装客户端 命令:rpm -ivh MySQL-client-5.1.20-0.glibc23.i386.rpm 成功表现: [root@localhost ~]# rpm -ivh MySQL-client-5.1.20-0.glibc23.i386.rpm warning: MySQL-client-5.1.20-0.glibc23.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%] 1:MySQL-client ########################################### [100%] 3、登陆mysql 登陆MySql的命令是mysql,mysql 的使用语法如下: mysql [-u username] [-h host] [-p[password]] [dbname] username 与 password 分别是 MySQL 的用户名与密码,mysql的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于初始没有密码,第一次进时只需键入mysql即可 [root@localhost ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.1.20-beta MySQL Community Server (GPL) 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不是一个文件。 补: 通过rpm包安装、配置及卸载mysql的详细过程. 以MySQL-server-4.0.14-0.i386.rpm为例,放在/data目录下 cd /data rpm -ivh MySQL-server-4.0.14-0.i386.rpm 安装完成后在/usr/share/mysql目录中会有一个mysql的启动脚本mysql.server及示例配置文件等(如my-huge.cnf、my-large.cnf、my-medium.cnf) 拷贝一个示例配置文件作为mysql的配置文件: cp /usr/share/mysql/my-medium.cnf /etc/my.cnf rpm包安装完后自动将mysql安装成系统服务,所以可以使用下面命令启动、停止mysql 启动mysql /etc/init.d/mysql start 或 service mysql start 停止mysql /etc/init.d/mysql stop 或 service mysql stop 到此,mysql服务就安装配置完成。 安装mysql客户端 rpm -ivh MySQL-client-4.0.14-0.i386.rpm mysql安装好后目录结构如下: 工具程序在/usr/bin目录中---ls /usr/bin/mysql* 服务器程序/usr/sbin/mysqld 数据目录/var/lib/mysql 默认情况下mysql将错误日志文件、二进制日志文件及进程文件写在/var/lib/mysql目录中,如localhost.err、localhost.pid、localhost-bin.001等 要改变这些情况可以修改/etc/my.cnf文件 如将日志文件写在/var/log目录中,可以在my.cnf文件中加入下面两行: [mysqld_safe] err-log = /var/log/mysqld.log 有个实用程序/usr/bin/mysql_install_db,该程序可以用来初始化 mysql数据库,即创建/var/log/mysql目录,及创建mysql数据库(mysql授权表等信息)及test数据库(空库),如果不小心删 除了/var/log/mysql目录可以通过该程序来初始化. 卸载mysql rpm -qa|grep -i mysql rpm -ev MySQL-server-4.0.14-0 MySQL-client-4.0.14-0 卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除 rm -f /etc/my.cnf rm -rf /var/lib/mysql mysql 1130错误解决方法: 通过MySQL-Front或mysql administrator连接mysql的时候发生的这个错误 ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server 说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。 需更改 mysql 数据库里的 user表里的 host项 把localhost改称% 具体步骤:登陆到mysql 首先 use mysql; 按照别人提供的方式update的时候,出现错误。 mysql> update user set host='%' where user = 'root'; ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 然后查看了下数据库的host信息如下: mysql> select host from user where user = 'root'; +-----------------------+ | host | +-----------------------+ | % | | 127.0.0.1 | | localhost.localdomain | +-----------------------+ 3 rows in set (0.00 sec) host已经有了%这个值,所以直接运行命令: mysql>flush privileges; 再用mysql administrator连接...成功!!! tar.gz版本安装: 版本1: 1。把MYSQL安装包放置并解压到/usr/local下 tar zxvf mysql-standard-5.0.27-linux-i686-glibc23.tar.gz 2。为目录建立符号链接 ln -s mysql-standard-4.0.24-pc-linux-gnu-i686 mysql 3。建立MYSQL组和用户 groupadd mysql useradd -g mysql mysql 4。改变mysql目录的所属用户和组 chown -R mysql . #注意保证此时的当前目录是/usr/lcoal/mysql chgrp -R mysql . 5。以mysql用户执行配置脚本 su mysql #切换到mysql用户 cd /usr/local/mysql #注意切换用户以后,工作目录已经不是/usr/local/mysql。所以得重新进去 ./configure #执行配置脚本 6。进入数据库,检查安装是否成功 /usr/local/mysql/bin/mysql 如果出现mysql的提示符且进入,说明安装成功! 7。在系统启动时自动打开mysql服务 su - #切换回root用户 cd /usr/local/mysql cp support-files/mysql.server /etc/rc.d/init.d/mysql #把mysql的脚本文件拷到系统的启动目录下 cd /etc/rc.d/init.d/ chmod +x mysql #改为可执行文件属性 chkconfig --add mysql #将mysql加到启动服务列表里 chkconfig mysql on #让系统启动时自动打开mysql服务 重起系统后,执行 /usr/local/mysql/bin/mysql ,如果出现mysql的提示符,说明整个安装成功 版本2: mysql-standard-4.0.24-pc-linux-gnu-i686.tar.gz 是mysql4.0.24版本的安装文件,是一个二进制的压缩包,所以我们的安装方式就为二进制分发安装。 安装步骤: 1.将 mysql-standard-4.0.24-pc-linux-gnu-i686.tar.gz 拷贝到一个目录中 2.shell> tar zvxf mysql-standard-4.0.24-pc-linux-gnu-i686.tar.gz 3.上面的命令将在当前目录下生成一个mysql-standard-4.0.24-pc-linux-gnu-i686文件夹 4.shell>mv mysql-standard-4.0.24-pc-linux-gnu-i686 /usr/local/mysql 5.上面的命令是将mysql-standard-4.0.24-pc-linux-gnu-i686下的所有东东,剪切到/usr/local/mysql 下,进行这一步是为了以后的方便。 6.shell> groupadd mysql 增加一个名为mysql的用户组 7.shell> useradd -g mysql mysql 在mysql用户组中加一个名为mysql的用户 如果上面的两个命令不能执行,那么要切换到root用户下执行 shell>su root - 8.shell> cd /usr/local/mysql 9.shell> cp support-files/my-medium.cnf /etc/my.cnf 这时会问是否覆盖重名文件,回答y 10.shell> scripts/mysql_install_db --user=mysql 以mysql用户初始化数据库,必须以mysql用户 11.shell> chown -R root 注意后面有点,表示将当前目录下的所有文件与子目录的拥有者设 定为root用户 12.shell> chown -R mysql data 表示将当前目录下的data目录的拥有者设定为mysql用户 13.shell> chgrp -R mysql . 注意后面有点,表示将当前目录下的文件的文件组设为mysql组 14.shell> bin/mysqld_safe --user=root & 此时如果没有出现“……ended”字样,大功告成! 15.回车显示shell> 此时你可以 通过 shell>netstat –atln 命令查看3306端口是否已经启用 也可以 shell>ps -ef | grep mysqld 查看当前系统中的mysqld的进程 或直接 shell>bin/mysql –u root 进入mysql客户端,进行mysql操作 或shell>bin/mysqladmin shutdown 停止mysql服务 记住:此时你的root用户是没有密码的,任何身份都可以用root进入,你可以 通过shell> bin /mysqladmin -u root password '新口令'来设定root用户的口令,此口令将在进入mysql客户端和停止mysql服务时需要输入 提示:在启单个服务的时候,可以通过修改/etc/my.cnf文件来配置 可以用VI编辑器打开my.cnf ,怎么打开呢,看下面 shell>vi my.cnf 打开my.cnf 找到下面这段 [mysqld] port = 8888 socket = /tmp/mysql.sock 可以在后面加上相应的配置 log = /var/log/mysql.log datadir = /free/mysqldbf 如 log = /* 改变log的保存位置 datadir = /free/mysqldbf 改变data的保存位置 希望对遇到同样问题的朋友有点点帮助 常用命令: 启动 MySQL: service mysql start /etc/init.d/mysql start /usr/share/mysql/mysql.server start [mysql.server] # 注释掉 basedir 行,否则 MySql 可能不能启动 # 据说是 MySql 的 bug # basedir=/var/lib root登录时,自动启动mysql: 在 /root/.bash_profile 文件中增加1行: /usr/share/mysql/mysql.server start 查看启动日志: /var/log/messages 显示MySQL所有用户: use mysql; select host,user,password from user; 添加 MySQL 用户(user name:user1,password:sql): grant all on *.* to user1@'%' identified by 'sql' with grant option; 删除 MySQL 用户: delete from user where user='user1'; 配置环境变量: PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:/usr/local/mysql/bin:$PATH |