linux 下卸载和安装 mysql
linux 环境 CentOS 6.4
安装包:Community Server下载地址:http://www.mysql.com/downloads/mysql/
查找以前是否装有mysql : rpm -qa|grep -i mysql
卸载所有含有 mysql 的安装包: rpm -e --nodeps 包名
删除老版本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 -ivh MySQL-server***
客户端: rpm -ivh MySQL-client***
//**************************************************
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目录可以通过该程序来初始化.
/usr/bin : Client programs and scripts -- mysqladmin mysqldump等命令
/usr/sbin: The mysqld server
/var/lib/mysql: Log files, databases --这个目录就是数据库的目录
/usr/share/info: Manual in Info format
/usr/share/man: Unix manual pages
/usr/include/mysql: Include (header) files
/usr/lib/mysql: Libraries
/usr/share/mysql : Miscellaneous support files,including error messages, character set files, sample configuration files, SQLfor database installation
--mysql.server命令及配置文件
/usr/share/sql-bench: Benchmarks
/etc/rc.d/init.d/: 启动脚本文件mysql的目录
**************************************************//
--启动 MySQL 服务
[root@CentOS ~]# /etc/init.d/mysql start 或者 service mysql start
Starting MySQL... [ OK ]
[root@rac2 init.d]# mysql
设置开机自启动
--查看MySQL 开机自启动设置:
[root@CentOS ~]# chkconfig --list |grep mysql
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
这里的数字分别代表Linux启动的不同模式,3是命令行,5是窗口。
--关闭开机自启动
[root@CentOS ~]# chkconfig mysql on (off 关闭)
[root@CentOS ~]# chkconfig --list |grep mysql
mysql 0:off 1:off 2:off 3:off 4:off 5:off 6:off
--将Mysql 从chkconfig服务里删除:
[root@CentOS ~]# chkconfig --del mysql
[root@CentOS ~]# chkconfig --list |grep mysql
--将Mysql 添加到chkconfig里:
[root@CentOS ~]# chkconfig --add mysql
[root@CentOS ~]# chkconfig --list |grep mysql
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
安装成功后,登录 mysql 时遇到的一些问题
//**************************************************
mysql 1130错误解决方法:
通过MySQL-Front或mysql administrator连接mysql的时候发生的这个错误
说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
需更改 mysql 数据库里的 user表里的 host项
mysql> update user set host='%' where user = 'root';
mysql>flush privileges;
登录mysql时候报错:
Access denied for user 'root'@'localhost' (using password:NO)
sudo /etc/init.d/mysqld stop //关闭mysql
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('密码') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
sudo /etc/init.d/mysqld start
mysql -uroot -p 你的密码
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement 时,执行以下
mysql> SET PASSWORD = PASSWORD('密码');
mysql> FLUSH PRIVILEGES;
**************************************************//
windows OS 下使用 navicat for mysql 连接linux 下 mysql
关闭 linux 下防火墙
service iptables stop(暂时关闭)
chconfig iptables off(永久关闭)
mysql>grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;