转载文章:http://www.2cto.com/database/201310/253698.html
mysql 下载地址:https://edelivery.oracle.com/EPD/Search/handle_go
1、先把系统里安装的所有mysql找出来
#rpm -qa | grep -i mysql 运行此命令后,显示所有列表:
2、将列表一一强制删除:
#rpm -ev --nodeps mysqlclient10-3.23.58-4.RHEL4.1
#rpm -ev --nodeps mysqlclient10-devel-3.23.58-4.RHEL4.1
3、将老版本的几个文件手工删除:
#rm -f /etc/my.cnf
#rm -rf /var/lib/mysql
#rm -rf/var/share/mysql
# rm -rf/usr/bin/mysql*
4.安装下载的版本的mysql,如上,
[root@oracle11 ~]#rpm -ivh MySQL-server-advanced-5.6.14-1.el6.x86_64.rpm --nodeps
Preparing... ########################################### [100%]
1:MySQL-server-advanced ###########################################[100%]
注意:如出现安装缺少依赖,则执行这个命令:rpm -ivh MySQL-server-advanced-5.6.14-1.el6.x86_64.rpm
(我当时把除server和client以外的所有rpm包都安装了,有必要的话,创建/tmp/mysql.sock)
5.安装client
[root@oracle11 ~]#rpm -ivh MySQL-client-advanced-5.6.14-1.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-client-advanced ###########################################[100%]
6.oracle收购Mysql后,新版的
mysql刚安装完mysql后不能直接输入mysql登录数据库,而是设置了默认free password密码,默认密码放在了/root/.mysql_secret文件中,登陆后需要修改密码
(注意:把/etc/my.cnf改名为my.cnf.bak,防止其干扰mysql的启动。之后执行:./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysq
借鉴此文章:http://www.cnblogs.com/xiongpq/p/3384681.html)
(注意:把/etc/my.cnf改名为my.cnf.bak,防止其干扰mysql的启动。之后执行:./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysq
借鉴此文章:http://www.cnblogs.com/xiongpq/p/3384681.html)
7.修改密码
(1)查看文件寻找密码
[root@oracle11 ~]#vi /root/.mysql_secret
(2)登陆Mysql
[root@oracle11 ~]#mysql -u root -p
(3)修改密码
mysql> setpassword for 'root'@'localhost' = password ('root');
Query OK, 0 rowsaffected (0.05 sec)
当然也可以使用脚本 /usr/bin/mysql_secure_installation进行交互式的修改mysql的root密码,如下:
[root@oracle11 ~]# /usr/bin/mysql_secure_installation
以下出错情况:
1,
启动Mysql时报错:mysqld_safe mysqld from pid file /usr/local/mysql/data/Linux.pid ended
解决方法:初始化mysql
/usr/local/mysql/scripts/mysql_install_db --user=mysql
cp support-files/mysql.server /etc/init.d/mysql chkconfig mysql on service mysql start --启动MySQL 3,配置防火墙防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
打开/etc/sysconfig/iptables
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
-A INPUT m state --state NEW m tcp p dport 3306 j ACCEPT然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
service iptables restart
4,出现错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
解决办法:
这时会发现没有/tmp/mysql.sock,但有/var/lib/mysql/mysql.sock文件
输入命令:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
执行命令: mysql -u root -p输入密码即可。