centos下完全卸载mysql
yum方式安装的mysql
1、yum remove mysql mysql-server mysql-libs compat-mysql51
2、rm -rf /var/lib/mysql
3、rm /etc/my.cnf
查看是否还有mysql软件:
rpm -qa|grep mysql
如果存在的话,继续删除即可。
rpm方式安装的mysql
a)查看系统中是否以rpm包安装的mysql:
[root@localhost opt]# rpm -qa | grep -i mysql
MySQL-server-5.6.17-1.el6.i686
MySQL-client-5.6.17-1.el6.i686
b)卸载mysql
[root@localhost local]# rpm -e MySQL-server-5.6.17-1.el6.i686
[root@localhost local]# rpm -e MySQL-client-5.6.17-1.el6.i686
c)删除mysql服务
[root@localhost local]# chkconfig –list | grep -i mysql
[root@localhost local]# chkconfig –del mysql
d)删除分散mysql文件夹
[root@localhost local]# whereis mysql 或者 find / -name mysql
mysql: /usr/lib/mysql /usr/share/mysql
清空相关mysql的所有目录以及文件
rm -rf /usr/lib/mysql
rm -rf /usr/share/mysql
rm -rf /usr/my.cnf
通过以上几步,mysql应该已经完全卸载干净了
http://blog.csdn.net/rosten/article/details/25096159
centos以rpm方式安装,卸载mysql
上一篇 / 下一篇 2012-05-17 15:20:10 / 个人分类:测试环境
查看( 490 ) / 评论( 0 ) / 评分( 0 / 0 )
没在centos上搭建过环境,这次项目的测试环境:centos 5.7+jdk1.7,tomcat7.26+mysql5.1
mysql安装过程如下:
安装文件:
MySQL-server-community-5.1.63-1.rhel5.x86_64.rpm
MySQL-client-community-5.1.63-1.rhel5.x86_64.rpm
1.查看系统有无安装mysql:
[root@localhost ~]# rpm -qa | grep MySQL
MySQL-devel-community-5.1.63-1.rhel5
MySQL-server-community-5.1.63-1.rhel5
MySQL-client-community-5.1.63-1.rhel5
说明已安装;
2.停止mysql服务:service mysql stop
3.卸载:yum removeMySQL-server-community-5.1.63-1.rhel5
yum removeMySQL-client-community-5.1.63-1.rhel5
yum remove MySQL-devel-community-5.1.63-1.rhel5
卸载成功;
4.删除相关目录:默认安装一般会在:
/usr/share/mysql
/var/lib/mysql
删除mysql文件夹即可;怕出问题,也可备份此文件夹到另外的目录;
5.安装:
rpm -ivh MySQL-server-community-5.1.63-1.rhel5.x86_64.rpm
rpm -ivh MySQL-client-community-5.1.63-1.rhel5.x86_64.rpm
成功安装服务器端与客户端
6.启动服务:service mysql start
7.登录访问:
首次安装时,默认密码为空,可以使用如下命令修改root密码
mysql -u root password mypassword
mypassword 是新设定密码;
然后再次登录
mysql -u root –p
rpm包安装的MySQL是不会安装/etc/my.cnf文件的,解决方法,只需要复制/usr/share/mysql目录下的my-huge.cnf 文件到/etc目录,并改名为my.cnf即可
cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
8.设置远程:
//赋予任何主机访问数据的权限
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’WITH GRANT OPTION
//使修改生效
mysql>FLUSH PRIVILEGES
如果依然不能远程访问的话,那就很可能防火墙的原因了,可以在防火墙中开启3306端口或者干脆关掉防火墙。
关闭防火墙:service iptables stop
我在设置密码及远程访问时遇到些问题,修改密码了,也设置远程访问权限了,发现mysql无法远程;
折腾了半天发现,使用新修改的密码不能访问,使用空密码可以。但centos服务器上是必须输入新密码登录的,空格已经不能登录了。为什么呢。进入mysql数据库查看了user表:
mysql> use mysql
Database changed
mysql> select host,user,password from user;
+———————–+——–+——————————————-+
| host | user | password |
+———————–+——–+——————————————-+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost.localdomain | root | |
| 127.0.0.1 | root | |
| localhost | | |
| localhost.localdomain | | |
| % | root | |
+———————–+——–+——————————————-+
7 rows in set (0.00 sec)
不知道为什么,只有host为localhost user为root的用户,密码是改过的。其它密码仍为空,个人猜想,远程登录时应该使用的是host为%的用户。
直接update密码为“*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 ”,修改成功,再登录,仍然无法使用新密码远程登录 。不知道这样直接修改与用命令mysql -u root 旧密码 新密码有什么区别
也不知道如何使用命令mysql -uroot -p命令修改host为%的密码;
后想到即然使用root用户,密码为空可远程登录,就在客户端里改吧。
我用的是SQLyog,使用root 空密码登录后,点击菜单栏中tools->user manager->edit user
修改其它root用户密码为新密码:123456;
mysql> use mysql
Database changed
mysql> select host,user,password from user;
+———————–+——–+——————————————-+
| host | user | password |
+———————–+——–+——————————————-+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost.localdomain | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost | | |
| localhost.localdomain | | |
| % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| % | lychee | |
+———————–+——–+——————————————-+
7 rows in set (0.00 sec)
重新使用SQLyog登录 ,root 123456 ok,登录成功。
波折~~~~~
查的文档:
http://www.cnblogs.com/hb_cattle/archive/2011/10/16/2213825.html
http://www.hackbase.com/tech/2012-04-01/66117.html
http://blog.csdn.net/monkey_d_meng/article/details/5573610
http://www.51testing.com/html/02/389802-813898.html
CentOS下MySQL卸载和安装
[日期:2012-04-21] 来源:Linux社区 作者:kangquan [字体:大 中 小]
MySQL的分区表功能自5.1才开始支持,CentOS的MySQL为5.0的,需要将其卸载后安装5.1
下面是一些操作、错误和解决方案的记录:
1.关闭目前的mysql服务
/etc/init.d/mysqld stop
2.确保已正常关闭
ps -ef | grep mysql
如果没关闭,kill之
3. 查询mysql的安装情况:
rpm -qa | grep mysql
将列出来的删除。
rpm -e mysql-server.x86_64
如果报有多个,则用项 –allmatches将其全部删掉
4. 下载mysql5.5的rpm版
rpm -ivh mysql-server和client
5. 启动新的mysql
/etc/init.d/mysql start
6. 尝试访问
mysql -uroot -p
我的 默认无密码,可正常访问
7.但是之前的php应用没法用了,报cannot load mysql extension .please check your php configuration
原因是刚才把php-mysql删了,其实是不应该删的。
8.重新安装php-mysql,我的系统为centos5.3,php为5.1.依赖的php-mysql也为5.1.yum安装php-mysql报:
libmysqlclient.so.15()(64bit) is needed
libmysqlclient.so.15(libmysqlclient_15)(64bit) is needed
php-common is needed
libmysqlclient.so是包含在mysql-share的,但直接安装5.5版的mysql-share是不行的,因为该版本的没有libmysqlclient.so.15,都高于15.
需要到http://dev.mysql.com/downloads/mysql/5.1.html#downloads下载(MySQL-shared-compat-5.1.62-1.rhel5.i386.rpm)
然后安装,但因为我支持装了5.5的mysql-share,会报冲突,即rpm安装时无法覆盖之前的,使用项–force强制覆盖即可。
rpm -ivh php-common-VERSION php-mysql-VERSION安装成功,www.linuxidc.com 解决该问题
9.在为其他节点远程访问该服务器的数据库设置时出错,Access denied for user ‘root’@'localhost’。解决方案见:
http://ilgnep.iteye.com/blog/701168,即:
MySQL节点执行GRANT命令为SPIDER服务器进行授权时,发生了如下错误:
mysql> GRANT ALL ON *.* TO ‘spider’@'spiderdb’ IDENTIFIED BY ‘spider’;
ERROR 1045 (28000): Access denied for user ‘root’@'localhost’ (using password: NO)
可是我就是使用root用户登录的,root的password也是空的,怎么可能会发生这个错误呢。
网上有相同的错误,是登录不进MySQL的解决办法。如果是忘记了密码,可以用下边的方法:
# /etc/init.d/mysql stop
# mysqld_safe -u mysql –skip-grant-tables –skip-networking &
# mysql -u mysql
mysql> UPDATE user SET Password=PASSWORD(‘newpassword’)where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> exit
# /etc/init.d/mysqld restart
# mysql -uroot -pnewpassword
可是这个方法却解决不了我的问题。
网上还有一种办法,删除user.user中值为NULL的(delete from user where user is NULL),或更新NULL为test(update user set user=‘test‘ where user is NULL)。但是也不好使。
偶然发现对于单个DB的授权是没有问题的,难道是root没有特定DB的权限?写了个script对于每个database执行”GRANT ALL ON $DATABASE.* TO ‘root’@'localhost’ IDENTIFIED BY ‘cps-pt’ with grant option;”,居然是information_schema的时候出错了。
前两天同志执行dump/restore的时候,DB曾经死掉过,难道information_schema被破坏掉了。
这好像是MySQL的一个restore时的bug。 linux
http://www.linuxidc.com/Linux/2012-04/58990.htm