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 passwordset for the root user at Wed Dec 11 23:32:50 2013(local time):02Bq8Ia6DBV5TvYy[root@localhost~]# mysql -uroot –p02Bq8Ia6DBV5TvYymysql> SET PASSWORD = PASSWORD('123456'); #设置密码为123456mysql>exit[root@localhost~]# mysql -uroot -p123456
e. 远程登陆用户设置mysql>use mysql;mysql> select host,user,password fromuser;
+-------------------------+------+-------------------------------------------+
| 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
mysql0: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 #启动脚本