码迷,mamicode.com
首页 > 数据库 > 详细

Linux\CentOS MySql 安装与配置

时间:2019-11-29 12:32:59      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:install   centos   环境配置   put   ant   乱码问题   生效   iptables   restart   

一、MySQL 简介

技术图片

  • MySQL 是一个关系型数据库管理系统,是MySQL AB公司开发,现在属于 Oracle 旗下产品。
  • MySQL 采用标准化语言。体积小、速度快、成本低、开源等特点使得一些中小型网站都选择使用 MySQL 作为网站数据库。

    二、MySQL 安装

    1. 安装环境

  • 系统:CentOS 6.8 64位
  • MySQL:mysql-server-5.1.73 社区版
  • MySQL CSDN下载链接

    2. 安装步骤

    1) 执行安装指令

yum -y install mysql-server
  • 注意:是否使用 sudo 权限执行,请根据您具体环境决定

    2) 执行命令,检查是否安装 mysql-server

rpm -qa|grep mysql-server

技术图片

三、MySQL 配置

  • 注意:默认配置文件在 /etc/my.cnf
  • 注意:是否使用 sudo 权限执行,请根据您具体环境决定

    1. 字符集配置

  • 关于中文乱码问题,在 5.1 版本时,为解决中文乱码问题,my.ini 内 [mysql] 和 [mysqld] 中都添加
default-character-set = utf8
  • 在 5.5 版本,[mysql] 内可以这么写,[mysqld] 内不能这么写,而是添加
character-set-server=utf8

1) 修改 my.cnf 配置:

sudo vim /etc/my.conf

2) 添加配置,在 [mysqld] 节点下添加:

default-character-set = utf8
character-set-server = utf8

技术图片

3) 保存退出

  • 通过vim的 ":wq"命令保存退出。如果还处于编辑状态,需要按下 Esc 键,再输入命令。

    2. 自启动配置

    1) 先执行命令

chkconfig mysqld on

2) 再执行查看 mysql 状态,如果2-5位启动状态为 on 即可。

chkconfig --list mysqld 

技术图片

3. 防火墙配置

1) 编辑防火墙配置

sudo vim /etc/sysconfig/iptables

2) 添加规则(开放3306端口)

-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

3) 保存退出

  • 通过vim的 ":wq"命令保存退出。如果还处于编辑状态,需要按下 Esc 键,再输入命令。

    4) 重启防火墙

sudo service iptables restart

技术图片

4. 启动 MySQL

sudo service mysqld start

或者

/etc/rc.d/init.d/mysqld start

技术图片

5. MySQL 环境配置

因为 mysql 还未设置密码,所以需要设置登录数据库服务器的密码。

  • 设置密码
mysql -u root
  • 登录后如下:

技术图片

  • 查看所有用户
select user,host from mysql.user;

技术图片

  • 删除匿名用户:
delete from mysql.user where user='';

技术图片

  • 查看所有用户
select user,host from mysql.user;

技术图片

  • 插入一个用户
insert into mysql.user(Host, User, Password) values("localhost", "huaiangg", Password("123456"));
  • 查看数据库已添加用户

技术图片

  • 创建一个database
create database `mmall` default character set utf8 collate utf8_general_ci;
  • 查看数据库权限(\G 进行格式化):
select * from mysql.user \G;
  • 赋予全部权限(因为需要远程连接,开放所有ip都能连接‘%‘)
-- on 后面接的是 数据库名.表名   .*表示该数据库下的所有表
-- root@localhost 表示用户名@ip地址
-- identitified by '123456'  ''里面表示该账户的密码
-- with grant option 表示可以把自己的权限赋值给别的用户
grant all privileges on mmall.* to  root@'%' identified by '123456' with grant option;
  • 修改用户密码
-- root@localhost ->> 用户名@ip
-- Password() ->> 内置函数
set password for root@localhost=Password('123456');
  • 使用用户密码登录,键入以下指令,然后输入密码便可登录。
mysql -u root -p

四、MySQL 验证

1. 查看运行 mysql 服务器的ip地址

ifconfig

技术图片

2. 通过客户端工具连接(这里使用 Navicat)

五、MySQL 常用命令

1. 查看目前 mysql 用户

select user,host,password from mysql.user;

2. 修改 root 密码(使用内置函数修改)

set password for root@localhost=password('your new password');

或者

set password for root@127.0.0.1=password('your new password');

3. 退出 mysql

exit

4. 重新登录(需要输入密码)

mysql -u root -p

5. 删除匿名用户

  • 查看是否有匿名用户
select user,host from mysql.user;
  • 删除匿名用户(user=‘‘, ‘‘表示空串)
delect from mysql.user where user = '';
  • 刷新,使操作生效
flush privileges;

6. 添加 mysql 新用户

insert into mysql.user(Host,User,Password) values("localhost", "yourusername", password("yourpaddword"));
  • 刷新,使操作生效
flush privileges;

7. 创建新的database

CREATE DATABASE `db_test` DEFAULT CHARRACTER SET utf8 COLLATE utf8_general_ci;

8. 给本地用户赋予所有权限

grant all privileges on db_test.* to yourusername@localhost identified by 'yourpassword';

9. 给账号开通外网所有权限

grant all privileges on db_test.* to 'yourusername'@'%' identified by 'yourpassword';
  • 这里需要根据自己所需要的权限给予权限,例如把db_test数据库下所有的表增改查权限(不给删除权限)给到 192.168.199.111 主机,写法如下:
grant select,insert,update  on db_test.* to yourusername@'192.168.199.111' identified by 'yourpassword';

人若无名,专心练剑!
喜欢的朋友可以留下你的赞!

Linux\CentOS MySql 安装与配置

标签:install   centos   环境配置   put   ant   乱码问题   生效   iptables   restart   

原文地址:https://www.cnblogs.com/huaiangg/p/11956996.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!