Centos 6.8 安装配置Mysql 5.6数据库

1.安装mysql5.6依存包

    注意:可以自行下载地址是  https://dev.mysql.com/downloads/mysql/5.6.html#downloads

2.下载编译包

wget  https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz        下载

tar  xvf  mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz           解压

3.复制到指定目录

mv   mysql-5.6.35-linux-glibc2.5-x86_64  /usr/local/mysql

4.创建mysql用户和组

groupadd  mysql

useradd  -r  -g  mysql   mysql  -d  /usr/local/mysql

passwd mysql

5.修改目录权限

chown  -R  mysql:mysql  /usr/local/mysql

6.安装数据库

su  mysql

/usr/local/mysql/scripts/mysql_install_db     --user=mysql     --basedir=/usr/local/mysql     --datadir=/usr/local/mysql/data

exit;

当执行su mysql 安装数据库时 linux新建用户切换后显示  -bash-4.1$(切换用户时)

    终端中显示 -bash-4.1$而不是 [mqm@locahost~] 据说是因为缺少配置文件。

    将/etc/skel中的文件全部复制到/var/mqm/之后,问题就得到了解决。 操作如下

cp  -a   /etc/skel/.     /usr/local/mysql                        -a表示复制隐藏文件

(这里可能会报错:/usr/local/mysql/scripts/mysql_install_db     --user=mysql     --basedir=/usr/local/mysql     --datadir=/usr/local/mysql/data,需要安装perl以及perl-devel.执行命令:yum–y install  perl    perl-devel  )

7.复制mysql配置文件

cd  /usr/local/mysql/support-files

cp my-default.cnf  /etc/my.cnf

8.添加系统服务

cp  mysql.server  /etc/init.d/mysql

chkconfig mysql on

9.添加环境变量

vim  /etc/profile

在最下面添加

export MYSQL_HOME="/usr/local/mysql"

export PATH="$PATH:$MYSQL_HOME/bin"

保存退出后,执行生效代码

.  /etc/profile

10.启动mysql

service  mysql  start

11.设置root密码

mysqladmin  -u  root  password  '123456'

12.设置默认端口

vi   /etc/my.cnf

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

port=3306

server_id=1

socket=/tmp/mysql.sock

13.允许所有外部链接访问(可选)

mysql -u root -p

mysql命令行输入

GRANT   ALL   PRIVILEGES    ON    *.*    TO   'root'@'%'   IDENTIFIED   BY   '123456'  WITH GRANT OPTION;

FLUSH PRIVILEGES;

以下是配置mysql数据库

一、查看mysql数据库

mysql -u root -p

    输入密码进入数据库。

show databases;   查看数据库

默认下有三个数据库 test、mysql、information_schema .

mysql 数据库是Mysql数据的核心。test是测试库,删掉也可以。数据库INFORMATION_SCHEMA:提供了访问数据库元数据的方式。

二、新建数据库用户及赋予权限。

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用。如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接。

( 1 )、 在 MySQL 命令行模式下输入如下命令可以为 MySQL 创建一个新用户:

1、   GRANT  ALL  PRIVILEGESON    *.*   TO   'username'@'localhost'    IDENTIFIED BY    'password' ;

        数据库:

*.*                    表示所有库的所有表

test.*                表示test库的所有表

test.test_table  表示test库的test_table表

( 2 )、授予username用户在所有数据库上的所有权限。

如果此时发现刚刚给的权限太大了,如果我们只是想授予它在某个数据库上的权限,那么需要切换到root 用户撤销刚才的权限,重新授权:

EVOKE  ALL  PRIVILEGESON  *.*  FROM  'username'@'localhost';

GRANT  ALL  PRIVILEGESON    my_web_db.*  TO    'username'@'localhost'    IDENTIFIED   BY  'password';

(3)、甚至还可以指定该用户只能执行 select 和 update 命令:

GRANT    SELECT,   UPDATE  ON  my_web_db.*  TO  'username'@'localhost'     IDENTIFIED  BY  'password';

这样一来,再次以username登陆 MySQL,只有my_web_db数据库是对其可见的,并且如果你只授权它select权限,那么它就不能执行delete 语句。

注意:   (但是当用户权限可以外部访问的时候,test库和information_schema  都是可见的,并且可以修改。)

另外每当调整权限后,通常需要执行以下语句刷新权限:

    FLUSH    PRIVILEGES;

删除刚才创建的用户:

DROP  USER     username@localhost;

仔细上面几个命令,可以发现不管是授权,还是撤销授权,都要指定响应的host(即 @ 符号后面的内容),因为以上及格命令实际上都是在操作mysql 数据库中的user表,可以用如下命令查看相应用户及对应的host:

SELECT   User, Host  FROM  user;



;


关闭远程访问:

use mysql;

update user set host = 'localhost' where user = 'root' and host= '%';

flush privileges;

查看用户权限:

use information_schema;

select * from user_privileges;

查看当前mysql用户:

use mysql;

select user, host from user;

更新用户:

update mysql.user set password=password('新密码') where User='phplamp' and Host='localhost';

flush privileges;

删除用户:

DELETE FROM user WHERE User='phplamp' and Host='localhost';

flush privileges;


三、用SQLyog软件创建用户。


注意:安装Mysql 5.7数据库请参照:https://www.cnblogs.com/coderls/p/6848873.html

安装Mysql8.0的数据库请参照:https://blog.csdn.net/hhppppppp/article/details/97801719

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容