CentOS6.8 下RPM方式安装MySQL5.6

1. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称)

yum remove mysql mysql-server mysql-libs
(我用的上面的)
或者

[root@linuxidc ~]# rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64
[root@linuxidc ~]# yum -y remove mysql-libs-5.1*

[root@linuxidc ~]# rpm -qa | grep mysql

[root@linuxidc ~]#

2.下载文件

wget http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-server-5.6.21-1.rhel5.x86_64.rpm 
wget http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-devel-5.6.21-1.rhel5.x86_64.rpm 
wget http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-client-5.6.21-1.rhel5.x86_64.rpm

3.安装

rpm -ivh MySQL-server-5.6.21-1.rhel5.x86_64.rpm
rpm -ivh MySQL-client-5.6.21-1.rhel5.x86_64.rpm
rpm -ivh MySQL-devel-5.6.21-1.rhel5.x86_64.rpm

cp /usr/share/mysql/my-default.cnf /etc/my.cnf

4.初始化MySQL及设置密码

[root@localhost rpm]# /usr/bin/mysql_install_db
[root@localhost rpm]# service mysql start
[root@localhost rpm]# cat /root/.mysql_secret  #查看root账号密码
# The random password set for the root user at Wed Dec 11 23:32:50 2013 (local time):02Bq8Ia6DBV5TvYy
[root@localhost ~]# mysql -uroot –p02Bq8Ia6DBV5TvYy
mysql> SET PASSWORD = PASSWORD('123456');    #设置密码为123456
mysql> exit
[root@localhost ~]# mysql -uroot -p123456
e. 远程登陆用户设置
mysql> use mysql;
mysql> select host,user,password from user;

+-------------------------+------+-------------------------------------------+
| host | user | password |
+-------------------------+------+-------------------------------------------+
| localhost | root | *FB7EF50C095F91289A470AE0C02BCBD930E89945 |
| collin    | root | *B4B234AB82D46CDE3402413C6B0E440ADE969D52 |
| 127.0.0.1 | root | *B4B234AB82D46CDE3402413C6B0E440ADE969D52 |
| ::1       | root | *B4B234AB82D46CDE3402413C6B0E440ADE969D52 |
+-------------------------+------+-------------------------------------------+

mysql> update user set password=password('123456') where user='root';
mysql> update user set host='%' where user='root' and host='localhost';
mysql> flush privileges;
mysql> exit

5.设置开机自启动

[root@localhost ~]# chkconfig mysql on
[root@localhost ~]# chkconfig --list | grep mysql
mysql           0:off   1:off   2:on    3:on    4:on    5:on    6:off

创建用户

CREATE USER 'test'@'%' IDENTIFIED BY 'test123';
CREATE USER 'test'@'collin' IDENTIFIED BY 'test123';
CREATE USER 'test'@'::1' IDENTIFIED BY 'test123';
CREATE USER 'test'@'127.0.0.1' IDENTIFIED BY 'test123';

说明:
username - 你将创建的用户名,
host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%.
password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器. 

设置与更改用户密码

命令:
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
如果是当前登陆用户用
SET PASSWORD = PASSWORD("newpassword"); 

授权

命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' 

说明: 
privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等,如果要授予所的权限则使用ALL.;
databasename - 数据库名,
tablename-表名, 如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 即*.*. 

例子: GRANT ALL ON *.* TO 'test'@'%';  授权所有数据库和表的所有权限给test;

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

撤销用户权限 

命令: 
REVOKE privilege ON databasename.tablename FROM 'username'@'host'; 例子: REVOKE SELECT ON *.* FROM 'pig'@'%'; 注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%',
则在使用REVOKE SELECT ON *.* FROM 'pig'@'%';命令并不能撤销该用户对test数据库中user表的SELECT 操作.
相反,如果授权使用的是GRANT SELECT ON *.* TO 'pig'@'%';则REVOKE SELECT ON test.user FROM 'pig'@'%';命令也不能撤销该用户对test数据库中user表的Select 权限. 具体信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.

删除用户

命令: DROP USER 'username'@'host'; 

配置mysql 不区分大小写

Linux下的MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:

1、用root登录,修改 /etc/my.cnf;
2、在[mysqld]节点下,加入一行: 
lower_case_table_names=1 3、重启MySQL即可;

其中 lower_case_table_names=1 参数缺省地在 Windows 中这个选项为 1 ,

在 Unix 中为 0,因此在window中不会遇到的问题,一旦一直到linux就会出问题的原因

MySQL的默认安装位置

/var/lib/mysql/ #数据库目录
/usr/share/mysql #配置文件目录
/usr/bin #相关命令目录
/etc/init.d/mysql #启动脚本


原文地址:https://www.cnblogs.com/collin/p/6796378.html