Linux\CentOS MySql 安裝與配置

1、MySQL 簡介

<img src="https://bucketblog.oss-cn-shenzhen.aliyuncs.com/blog/pic/mysql_logo.jpg" width="250" hegiht="150"/>mysql

  • MySQL 是一個關係型數據庫管理系統,是MySQL AB公司開發,如今屬於 Oracle 旗下產品。
  • MySQL 採用標準化語言。體積小、速度快、成本低、開源等特色使得一些中小型網站都選擇使用 MySQL 做爲網站數據庫。

2、MySQL 安裝

1. 安裝環境

2. 安裝步驟

1) 執行安裝指令

yum -y install mysql-server
  • 注意:是否使用 sudo 權限執行,請根據您具體環境決定

2) 執行命令,檢查是否安裝 mysql-server

rpm -qa|grep mysql-server

安裝檢查

3、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

chkconfig mysql 狀態

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

restart iptables

4. 啓動 MySQL

sudo service mysqld start

或者sql

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

mysqld_start

5. MySQL 環境配置

由於 mysql 還未設置密碼,因此須要設置登陸數據庫服務器的密碼。shell

  • 設置密碼
mysql -u root
  • 登陸後以下:

正常登陸mysql

  • 查看全部用戶
select user,host from mysql.user;

mysql匿名用戶

  • 刪除匿名用戶:
delete from mysql.user where user='';

刪除匿名用戶

  • 查看全部用戶
select user,host from mysql.user;

mysql已無匿名用戶

  • 插入一個用戶
insert into mysql.user(Host, User, Password) values("localhost", "huaiangg", Password("123456"));
  • 查看數據庫已添加用戶

已添加huaiangg用戶

  • 建立一個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

4、MySQL 驗證

1. 查看運行 mysql 服務器的ip地址

ifconfig

查看mysql ip

2. 經過客戶端工具鏈接(這裏使用 Navicat)

3. 安裝過程就不闡述了,有興趣能夠看一下的文章,這裏直接貼測試鏈接圖:

1) 鏈接到 centos 數據庫

navicat鏈接到mysql

2) 鏈接成功則說明已經完成安裝

mysql鏈接成功

5、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';

人若無名,專心練劍! 喜歡的朋友能夠留下你的贊!vim

相關文章
相關標籤/搜索