易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 3671|回复: 0
收起左侧

CentOS 7.0系统下安装配置mariadb步骤详解

[复制链接]
发表于 2017-5-23 09:03:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
6 P! c8 N, o1 u

( }7 J! v8 v3 v" z; l6 c[p=120, null, left]shell >

[p=120, null, left]hostname  mariadbServer  

[p=120, null, left]#临时设置主机名为

[p=120, null, left]mariadbServer  

[p=143, null, left]mariadbServer  

[p=143, null, left]#修改localhost.localdomain为

[p=143, null, left]mariadbServer  

[p=143, null, left]:wq!  #保存退出

[p=121, null, left]shell >

[p=121, null, left]vi /etc/hostname #编辑配置文件

[p=143, null, left]127.0.0.1   localhost  mariadbServer  

[p=143, null, left]#修改localhost.localdomain为

[p=143, null, left]mariadbServer  

[p=143, null, left]:wq!  #保存退出

[p=120, null, left]shell >

[p=120, null, left]vi /etc/hosts #编辑配置文件

[p=143, null, left]a.

[p=143, null, left]若安装时没有设置主机名

[p=143, null, left],

[p=143, null, left]则参考以下步骤设置主机名

[p=143, null, left]:

[p=121, null, left]shell >

[p=121, null, left]cd  /etc/sysconfig/network-scripts/

[p=143, null, left]HWADDR=00:0C:29:8D:24:73

[p=142, null, left]TYPE=Ethernet

[p=143, null, left]BOOTPROTO=static  #启用静态IP地址

[p=143, null, left]DEFROUTE=yes

[p=142, null, left]PEERDNS=yes

[p=143, null, left]PEERROUTES=yes

[p=143, null, left]IPV4_FAILURE_FATAL=no

[p=143, null, left]IPV6INIT=yes

[p=142, null, left]IPV6_AUTOCONF=yes

[p=143, null, left]IPV6_DEFROUTE=yes

[p=143, null, left]IPV6_PEERDNS=yes

[p=142, null, left]IPV6_PEERROUTES=yes

[p=143, null, left]IPV6_FAILURE_FATAL=no

[p=143, null, left]NAME=eno16777736

[p=143, null, left]UUID=ae0965e7-22b9-45aa-8ec9-3f0a20a85d11

[p=142, null, left]ONBOOT=yes  #开启自动启用网络连接

[p=143, null, left]IPADDR0=192.168.21.128  #设置IP地址

[p=143, null, left]PREFIXO0=24  #设置子网掩码

[p=142, null, left]GATEWAY0=192.168.21.2

[p=142, null, left] #设置网关

[p=143, null, left]DNS1=8.8.8.8  #设置主DNS

[p=143, null, left]DNS2=8.8.4.4  #设置备DNS

[p=143, null, left]:wq!  #保存退出

[p=121, null, left]shell >

[p=121, null, left]vi  ifcfg-eno16777736

[p=121, null, left]shell >

[p=121, null, left]service network restart   #重启网络

[p=120, null, left]--

[p=120, null, left]若习惯

[p=120, null, left]ifconfig  

[p=120, null, left]可以使用

[p=120, null, left]yum install net-tools

[p=120, null, left]进行安装

[p=121, null, left]shell >

[p=121, null, left]ip addr  #CentOS 7 ifconfig

[p=121, null, left]命令已经过时

[p=121, null, left]查看IP地址使用

[p=121, null, left]ip addr

[p=121, null, left]

[p=121, null, left]ip link

[p=142, null, left]b.

[p=142, null, left]网络配置

[p=143, null, left]CentOS 7.0默认使用的是firewall作为防火墙,这里改为常用的iptables防火墙。

[p=143, null, left]systemctl stop firewalld.service #停止firewall

[p=143, null, left]systemctl disable firewalld.service #禁止firewall开机启动

[p=142, null, left]     --

[p=142, null, left]关闭firewall

[p=142, null, left]:

[p=142, null, left]yum install iptables-

[p=142, null, left]services #安装

[p=143, null, left]# sample configuration for iptables service

[p=142, null, left]# you can edit this manually or use system-config-firewall

[p=143, null, left]# please do not ask us to add additional ports/services to this default configuration

[p=143, null, left]*filter

[p=143, null, left]:INPUT ACCEPT [0:0]

[p=142, null, left]:FORWARD ACCEPT [0:0]

[p=143, null, left]:OUTPUT ACCEPT [0:0]

[p=143, null, left]-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

[p=142, null, left]-A INPUT -p icmp -j ACCEPT

[p=143, null, left]-A INPUT -i lo -j ACCEPT

[p=143, null, left]-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

[p=143, null, left]-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

[p=142, null, left]-A INPUT -p tcp -m state --state NEW -m tcp --dport 12888 -j ACCEPT

[p=143, null, left]-A INPUT -j REJECT --reject-with icmp-host-prohibited

[p=143, null, left]-A FORWARD -j REJECT --reject-with icmp-host-prohibited

[p=142, null, left]COMMIT

[p=143, null, left]vi /etc/sysconfig/iptables #编辑防火墙配置文件

[p=143, null, left]:wq! #保存退出

[p=143, null, left]     --

[p=143, null, left]安装iptables防火墙

[p=143, null, left]c.

[p=143, null, left]防火墙设置

[p=143, null, left]


- O0 f. i/ B# A

: ?1 E4 O: J0 w. Y! g5 f
% T" [( d. U# P6 \5 j1 {/ d' w; t/ G
  u& n9 D' p* X: Y" V; f5 m! y

" b; N, ?# y$ H! U
% d) i: H  M' [3 p, [

& C5 f  `  z! x; f, }9 p

/ `9 T; i( M8 ]7 c5 r8 k
% a7 y- L- c8 @7 X

$ |; F. K5 Z& H4 K6 w$ k( z- ?/ l
1 u4 Y$ N4 u# |
+ n" M* K7 x* m- l! f# x

( C) w/ Z8 b0 k( K+ _" T- Ysystemctl restart iptables.service #最后重启防火墙使配置生效
1 M, }; R! y5 P1 {systemctl enable iptables.service #设置防火墙开机启动- e% l( Y( N8 }/ M! r
vi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXTYPE=targeted #注释掉SELINUX=disabled #增加
, m# ?2 K8 p4 W/ D% P:wq! #保存退出立即启用setenforce 0
2 U  G' `* O. h  k# s8 ~9 u8 nd.关闭SELINUX$ d3 }# ^$ Y1 B
>vi /etc/ssh/sshd_config7 r8 E1 E( r% z$ _9 W  L  z
--打开并修改PermitRootLogin 为noservice sshd restart% g. j5 v; F# M' X0 }. u& C
--打开并修改port为12887/ I4 r, _, J0 z, j. g+ @0 F0 U" N$ E
e.修改ssh默认端口,并取消允许root的ssh权限,防止暴力破解/ a" t, {: n( M: _
a.上传安装source到目录,使用wincp或vsftpd,建议使用wincpshell> yum install -y gcc gcc-c++ ; _3 u' ~" S' E5 U( ~2 L
    安装依赖的package:3 t, i2 Z0 _3 {, i* X. G
      shell> yum install -y cmakelibaio bison ncurses-devel
% [- z7 E7 `; {: Lshell> groupadd mariadb --创建mariadb组
2 L3 o, b7 }7 }: B' bshell> useradd -g mariadbmariadb --创建mariadb用户* r7 ~6 E* T$ p3 ~
shell>passwd mariadb  --修改密码b.添加用户和组0 G; ^* L+ X$ _! {* @. T' x
shell>cd /usr/local1 a* ]8 |: F; b+ N4 a
shell>tar -zxvf /root/mariadb-10.0.13-linux-x86_64.tar.gz shell>ln -s /usr/local/mariadb-10.0.13-linux-x86_64mariadbc.解压缩并创建链接  l$ Q; ?1 _7 {# p* V
shell> cd mariadb" R% l9 w* T& u. H6 U. I$ i
shell> chown -R mariadb .shell> chgrp -R mariadb.d.修改文件所属用户及群组
$ S$ M0 `' |  R) i8 S8 B% P7 Fshell> scripts/mysql_install_db --user=mariadb  (root用户安装需指定用户,若使用mariadb用户安装则不需指定)e.创建数据目录并初始化权限表
" m4 \; b% g2 ?( v8 sf.再次修改文件所属用户8 z8 V/ J6 J4 V& m* A7 ~: N+ X, T: k
shell> chown -R root .
# {& |& w% W# J+ o, ~shell> chown -R mariadbdata           数据目录开放给mariadb用户,其他可以开放给root. J1 ]+ b! b7 f/ [: w* v
g.安装完成启动mariadb
( X% ^" @) y/ f5 q, O; Wshell > mkdir /var/log/mariadb' o% l1 G' a8 n* |, W1 j
shell > cd /var/log | chown mariadb:mariadb mariadbshell > mkdir /var/run/mariadb1 L; N" J6 D4 L8 v
shell > cd /var/run | chown mariadb:mariadb mariadb- G: `+ m+ m0 r; c5 ~
    --创建链接
8 F( L  t0 {% y7 Gshell > ln -s /usr/local/mariadb /usr/local/mysql    --启动数据库" ^8 p/ d' M/ `2 j7 V
shell> bin/mysqld_safe --user=mariadb            --创建两个日志目录并赋予相应权限
! R/ p4 B* V8 ^* s  D! n) c2 P将/usr/local/mariadb/bin加入$PATH变量中,并设置别名alias mariadb = 'mysql'
+ w" Z6 J6 y% t2 l9 k编译环境变量source  .bash_profileshell > mysql
' t( n8 R- W  R) \& m" d- \; S/ M  ^h.环境变量配置并尝试连接mysql' c/ h8 N! h: w. z) {
***************************************************************************************************** Remove any pre-installed old mysql files / libraries usually linux distros installs MySQL 5.1 *** s- y. @2 u8 _5 `9 g
***************************************************************************************************rm -fR /etc/mysql* r$ S4 a* U3 z+ o* I
rm -fR /var/lib/mysql/mysql
7 t- K9 C: l* Y) ]/ n( ~' xrm -fR /var/lib/mysqlfind -R / -name mysql*find / -name mysql*6 \; x6 c9 m2 ^% c' _1 ]9 B* h
** 中途如有错误,需重新安装,重新安装前先删除对应的文件
. r- z# r/ w# b' m1 m1 B四.mariadb安装及配置4 `* m$ E) j/ M; U" f3 O( `9 ]
   
* L- S3 q3 N: D' f+ C7 @. D% S; J. L- R5 y6 G/ Z
2 q2 T* b: |, u& z1 q' n

" q2 q/ C) n- X" s! M
* Z9 B* n7 g: V' w" y
& |' Q' @( ~5 G3 S; e; ^
( N* O. r8 c* Z4 o
8 o8 |: n* r. s, w
' }; c2 A' S" ?

7 w0 I# \& Z+ |5 n( F

/ G: u4 H! c- J8 _: e0 e6 _rm -fR /opt/mysql8 E  _0 u/ n( h4 y
find / -name mysql*重新解压文件.j.用户安全配置
- w9 C- `- W: C$ q. n列举出当前不需要密码的用户:
2 J* _+ C4 ^7 n* Q; o列举出不需要密码可以连接的db:
( ?0 U- ]9 ?  \6 [" d; L) d( _/ ishell > SELECT User, Host, Password FROM mysql.user;
% ^, a/ }. _, K7 D允许匿名用户或无权限的用户访问test或test_前缀的数据库;--清除该表内容
$ \& m8 p; K, D( h9 W$ R% Q" kshell> mysql -u root7 s& z& c$ y3 G5 D" v
mysql> UPDATE mysql.user SET Password = PASSWORD('newpwd')& j/ a1 R! x$ O/ l- K
-> WHERE User = 'root';mysql> FLUSH PRIVILEGES;1).update. v8 z0 }; Z* c- a. U8 S7 g
shell> mysql -u root4 O) ]* n9 Q1 Q$ G, D( p
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd');mysql> SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('newpwd');
. I2 f! m4 h7 D+ B+ f' H% d5 @mysql> SET PASSWORD FOR 'root'@'::1' = PASSWORD('newpwd');; S0 ]: {0 f, [6 |7 i
mysql> SET PASSWORD FOR 'root'@'host_name' = PASSWORD('newpwd');2).set password
# `; x2 R1 V" w+ `shell> mysqladmin -u root password "newpwd"2 u& \" m) o0 b( Y2 S
shell> mysqladmin -u root -h host_name password "newpwd"
" m" J& R; l) l$ k3).mysqladmin
# D: J% S5 i- {  x, M. croot密码的设定可以有三种方式:3 j  [: _" e2 f8 o
mysql>drop user ''@'localhost';mysql>drop user ''@'mariadb\_server';0 X$ d1 x8 H& X1 B* Q9 J9 u
删除空用户:
+ l, U- g$ M. eshell > select user,db from mysql.db;
: F. E0 q" `; \) r# p$ h--测试数据库的安全保障:shell> mysql -u root -p# W  x3 ~: _) }- G1 ~7 I3 @& p7 C
Enter password: (enter root password here)
: [6 L; w% n; w5 G/ q7 Fmysql> DELETE FROM mysql.db WHERE Db LIKE 'test%';mysql> FLUSH PRIVILEGES;--彻底删除测试数据库
/ o$ ^* G/ H) A9 F2 G! \0 O5 zmysql> drop database test;, X) y3 }, G0 H' v4 j4 k
重启系统后报错找不到对应的/usr/local/mysql/bin/mysqld
, |0 Q7 o, f& R原因是mysqld只认mysql/bin下面的mysqld,因此需要做一个链接到正确的mariadb/bin/mysqld允许远程root用户登录5 a, N% H' A! i, R& K
    mysql> grant all privileges on *.* to 'root'@'192.168.1.111' identified by 'y}%oTiaU-3' with grant option;     mysql> flush privileges;     k.用户管理:5 h9 D! m3 E1 ]% S% K
--cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mariadb  #将服务文件拷贝到init.d下,并重命名为mariadb--  vi mariadb  #修改mysqld_safe --datadir ..  为mysqld_safe --user=mariadb...--chkconfig --add mysql       添加服务
: v* _9 K4 K  N0 \9 u, B--chkconfig --list            显示服务列表! b& W( s& j1 I
            如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入          chkconfig --level 345 mysql on
4 Y. D8 i5 i2 K6 e4 [  G--reboot重启电脑' j( |3 u+ [& V  ]! ^& o% u& `9 F0 l
--netstat -na | grep 3306,如果看到有监听说明服务启动了
# c! ?. J5 e" m      l.设置mariadb开机自启动
$ i$ J9 O* z4 j6 j' ]9 N" r--vi /etc/my.cnf    [mysqld]    ...( u+ \# e4 Q) D+ q+ L, U
    character-set-server=utf8mariadb默认的数据库字符集为latin1,如果需要修改为支持中文字符的数据库,则需要修改以下配置参数。
* g( N* s$ Y3 E& a1 `7 h: L( p! I5 G3 y6 k7 p4 H7 ~
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 21:31 , Processed in 0.054382 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表