liunx安装mysql及常见问题

一. 卸载原有mysql

查看安装包
命令:rpm -qa |grep -i mysql

[root@vm-10-154-xxx-xxx ~]# rpm -qa |grep -i mysql
mysql-devel-5.1.73-3.el6_5.x86_64
mysql-5.1.73-3.el6_5.x86_64
perl-DBD-MySQL-4.013-3.el6.x86_64
mysql-server-5.1.73-3.el6_5.x86_64
mysql-libs-5.1.73-3.el6_5.x86_64

删除安装包

rpm -ev mysql-libs-5.1.73-3.el6_5.x86_64   删除每个mysql包

--------------------------------------------------------------------------------------------------------------------------------

删除过程有依赖,先删除依赖,删除依赖报错,如下:

[root@vm-10-154-156-xxx ~]# rpm -ev mysql-libs-5.1.73-3.el6_5.x86_64
error: Failed dependencies:
    libmysqlclient.so.16()(64bit) is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64
    libmysqlclient.so.16(libmysqlclient_16)(64bit) is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64
    mysql-libs is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64

使用命令: rpm -e mysql-libs-5.1.61-4.el6.x86_64 --nodeps

再次查看rpm -qa |grep -i mysql*          都删除

---------------------------------------------------------------------------------------------------------------------------------

命令:whereis mysql;

删除mysql文件

查看时候在开机启动中

chkconfig --list | grep -i mysql 

[root@vm-10-154-156-224 ~]# chkconfig --list | grep -i mysql
mysqld             0:off    1:off    2:off    3:off    4:off    5:off    6:off

如果5和6为on 在开机启动中

删除 开机启动chkconfig --del mysql

 

二. yum 安装mysql

1、安装
查看有没有安装过:
yum list installed mysql*
rpm -qa | grep mysql*
 
查看有没有安装包:
yum list mysql*
 
安装mysql客户端:
yum install mysql
 
安装mysql 服务器端:
yum install mysql-server
 
yum install mysql-devel
2、启动&&停止
 
数据库字符集设置
mysql配置文件/etc/my.cnf中加入default-character-set=utf8
 
启动mysql服务:
service mysqld start或者/etc/init.d/mysqld start
开机启动:
chkconfig -add mysqld,查看开机启动设置是否成功chkconfig --list | grep mysql*
 
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
停止:
service mysqld stop
2、登录
 
创建root管理员:
mysqladmin -u root password 123456

登录:
mysql -u root -p输入密码即可。
忘记密码:
service mysqld stop
mysqld_safe --user=root --skip-grant-tables
mysql -u root
use mysql
update user set password=password("new_pass") where user="root";
flush privileges;
3、远程访问
 
开放防火墙的端口号
mysql增加权限:mysql库中的user表新增一条记录host为“%”,user为“root”。
4、Linux MySQL的几个重要目录

数据库目录
/var/lib/mysql/
配置文件
/usr/share /mysql(mysql.server命令及配置文件)
相关命令
/usr/bin(mysqladmin mysqldump等命令)
启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
--------------------------------------------------------------------------------------------------------------------

安装过程中出现问题(想设置root用户登录密码):

mysql> use mysql;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

mysql> show databases; 
+--------------------+ 
| Database | 
+--------------------+ 
| information_schema | 
| test | 
+--------------------+ 
2 rows in set (0.00 sec)

mysql> quit 
Bye

没有mysql数据库

提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'。前两天也出现过这个问题,网上找了一个比较流行的方法(见方法一),搞定了。今天又用这个试了试,却搞不定,在网上找了半天,终于发现是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的''@'localhost'可以看出来,于是解决办法见方法二。

方法一:
1.关闭mysql
   # service mysqld stop
2.屏蔽权限
   # mysqld_safe --skip-grant-table
   屏幕出现: Starting demo from .....
3.新开起一个终端输入
   # mysql -u root mysql

   设置root用户的口令(被要求Enter password的时候,直接按回车键就过去了):
   mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
   mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
   mysql> \q

方法二:
1.关闭mysql
   # service mysqld stop
2.屏蔽权限
   # mysqld_safe --skip-grant-table
   屏幕出现: Starting demo from .....
3.新开起一个终端输入
   # mysql -u root mysql
   mysql> delete from user where USER='';
   mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
   mysql> \q

 

 

 

 

 

 

你可能感兴趣的:(mysql)