Centos 下源码安装MySQL

来源:互联网 发布:淘宝衣服怎么换货 编辑:程序博客网 时间:2024/05/20 02:27

1、安装mysql

安装mysql时,我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行

yum install -y mysql-server mysql mysql-devel

此时我们可以通过如下命令,查看刚安装好的mysql-server的版本

rpm -qi mysql-server

我们在安装完mysql数据库以后,会发现会多出一个mysqld的服务,这个就是咱们的数据库服务,我们通过输入 service mysqld start 命令就可以启动我们的mysql服务。

我们在使用mysql数据库时,都得首先启动mysqld服务,我们可以 通过  chkconfig --list | grep mysqld 命令来查看mysql服务是不是开机自动启动,如:

[root@xu pm]# chkconfig --list | grep mysqld

mysqld         0:关闭1:关闭2:关闭3:关闭4:关闭5:关闭6:关闭

我们发现mysqld服务并没有开机自动启动,我们当然可以通过 chkconfig mysqld on 命令来将其设置成开机启动,这样就不用每次都去手动启动了
mysql数据库安装完以后只会有一个root管理员账号,但是此时的root账号还并没有为其设置密码,在第一次启动mysql服务时,会进行数据库的一些初始化工作,在输出的一大串信息中,我们看到有这样一行信息 :

/usr/bin/mysqladmin -u root password 'new-password'

ok,然后设置密码

[root@xu pm]# mysqladmin -u root password '123456'

此时我们就可以通过 mysql -u root -p 命令来登录我们的mysql数据库了

[root@xu pm]# mysql -u root -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.1.73 Source distribution


Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.


Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.


Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| test               |

+--------------------+

3 rows in set (0.00 sec)


第二部分—————————————————————————————————

1.新建用户
//登录MYSQL
@>mysql -u root -p
@>密码
//创建用户
mysql> insert into mysql.user(Host,User,Password) values('localhost','cms',password('123456'));
//刷新系统权限表
mysql>flush privileges;
这样就创建了一个名为:cms    密码为:123456 的用户。
 //退出后登录一下
mysql>exit;
@>mysql -u cms -p
@>输入密码
mysql>登录成功

2.为用户授权
//登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.
@>mysql -u root -p
@>密码
//首先为用户创建一个数据库(cmsdb)
mysql>create database cmsdb;
//授权cms 用户拥有 cmsdb 数据库的所有权限
@>grant all on cmsdb.* to cms@localhost identified by '123456';

****

@>grant all privileges on cms.* to 'cms'@'172.17.12.%' identified by '123456';  //或直接指定IP授权访问数据库的权限

//刷新系统权限表
mysql>flush privileges;
mysql>其它操作

//取消授权cms 用户拥有 cmsdb 数据库的所有权限

@>revoke alter on cmsdb.* from cms@localhost identified by '123456';

@>revoke alter on cmsdb.* from cms@'172.17.12.%' identified by '123456'; //取消指定IP授权访问数据库的权限
 
(--授权app用户从指定IP访问downloaddb数据库的表(增删改查)
GRANT select,insert,update,delete ON cmsdb.* TO 'cms'@'172.17.12.%' IDENTIFIED BY '123456' WITH GRANT OPTION;
--取消授权
revoke select,insert,update,delete ON cmsdb.* from 'cms'@'172.17.12.%' IDENTIFIED BY '123456';  )

 
3.解决mysql指定数据库指定IP授权办法


mysql 配置文件目录:/etc/my.cnf
root 密码为空的时候配置文件中下面这句加上注解符 # :
#skip-grant-table

0 0
原创粉丝点击