Centos下Mysql安装图文教程_Mysql_脚本之家,第一节

时间:2019-12-21 19:57来源:江苏十一选五手机版数据库
这时,再次尝试使用” show databases; “你会发现已经是可以查看数据库的了。 centos mysql  实战  第一节课   安全加固  mysql安装 命令: vim /etc/profile B. 用linux的包管理工具进行快捷安装,

这时,再次尝试使用” show databases; “你会发现已经是可以查看数据库的了。

centos mysql  实战  第一节课   安全加固  mysql安装

命令: vim /etc/profile

图片 1

B. 用linux的包管理工具进行快捷安装,比如Ubuntu的apt-get, Centos的yum,还有一个是rpm,

MySQL里面show processlist  每一个process就是一个线程 

[注意]创建软链接,可以方便你包管理。

  1. 初始化
    5.1,5.5,5.6
    cd /usr/local/mysql/
    ./scripts/mysql_install_db  --defaults-file=/etc/my.cnf
    看到两次ok
  1. 在 opt 目录下新建一个文件夹mysql。 命令: mkdir /opt/mysql

  2. 解压下载好的安装包到/opt/mysql下。

 

命令: groupadd mysql

  1. 下载MySQL
    wget  -c

命令: ln -s /opt/mysql/mysql-5.7.15-linux-glibc2.5-x86_64/ /usr/local/mysql

也可以使用/usr/local/mysql/bin/mysql_secure_installation 来初始化mysql,进行安全加固

5.7不用做
delete from mysql.user where user!='root' or host!='localhost';
truncate table mysql.db; #对test库没有授权,直接可以连接进来test库

useradd -g mysql -s /sbin/nologin -d /usr/local/mysql -M mysql

====== 启动起来 ========================

C. 源码安装比较复杂,有兴趣可以去尝试,想快速使用,建议前面两种方式进行安装

关闭:
/etc/init.d/mysql stop
/usr/local/mysql/bin/mysqladmin -S   /data/mysql/mysql3306/tmp/mysql.sock  shutdown

以下是我安装了两个实例的截图:

cat  /data/mysql/mysql3306/logs/error.log|grep -i  'password'
2016-11-30T13:28:37.276714Z 1 [Note] A temporary password is generated for root@localhost: 6fT?TYzJI*Dg

精彩专题分享:mysql不同版本安装教程 mysql5.7各版本安装教程

看一下系统中是否有mysql这个用户
id   mysql

  1. 给第4步的 mysql 用户授权相关目录

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

  2. 启动Mysql:

使用mv命令或者cp命令把这个文件弄到根目录下。

添加环境变量,两种方法
echo  "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile
echo  "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile.d/mysql.sh

然后保存退出后,使用命令: source /etc/profile

  1. 创建一个配置文件  如果是多个实例分开多个my.cnf  my3306.cnf  my3307.cnf
    vim %s/3306/3306/g
    socket = /tmp/mysql3376.sock
    innodb_data_file_path = ibdata1:1024M:autoextend

tar -zxvf ~/mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz

  1. 拷贝mysql文件
    mv  /data/download/mysql-5.6.30-linux-glibc2.5-x86_64/*   /usr/local/mysql/
    cp  /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

这次掌握了如何安装Mysql。但是还是需要仔细看看它的配置文件,用法,提高自己的Mysql技能。

建立一个mysql用户
useradd  -s /sbin/nologin  -M  mysql

:) 好了,如果你坚持到这里。那么恭喜你已经完成了一大半了。剩下的就是初始化,启动和登录Mysql了。

要掌握基本命令,screen,vim,要求能在Linux下输入20个命令不重复

[注意]这个命令过程如果没有error,就是成功了的。如果有error可以到/data/mysql/mysql3306/data下 打开error.log查看错误的原因。产生warning,是可以不用在意的。

5.7
--设置随机密码
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf  --initialize

B. 简单方便快捷,但是往往不够自由,而且不一定能用到最新的Mysql版本,适合新手。

  1. 解压
    tar zxvf mysql-5.6.28-linux-glibc2.5-x86_64.tar.gz

[注意]命令后面的 ‘&',是让Mysql在后台运行。如果没有error产生是能顺利启动的。 [检验是否成功启动] 命令: ps axu | grep mysqld

cat  /data/mysql/mysql3306/logs/error.log|grep -iE 'ERROR'
没有error

[注意]这个命令是用来批量创建目录的,其中data文件夹位于跟root文件夹一个层次,你可以自定义这个路径,因为我已经创建了3306,故以截图3308为例。

percona名字的由来=consultation 顾问+performance 性能=per  con  a

A: Too young too sample,可以尝试使用脚本登录。脚本怎么写?敬请期待后续更新。

图片 2

wget

 

  1. 登录Mysql:
  1. 启动 & 关闭  如果是多实例 分开多个启动脚本 /etc/init.d/mysql3306  /etc/init.d/mysql3307
    修改启动脚本 vi  /etc/init.d/mysql
    port=3306
    sed -i  's#^basedir=#basedir=/usr/local/mysql#' /etc/init.d/mysql
    sed -i  's#^datadir=#datadir=/data/mysql/mysql$port/data#' /etc/init.d/mysql

[注意]这个命令执行成功后,它最后那里会给一个root账户临时登录的密码,以前的Mysql版本的root登录默认是空密码,但是这个改了。所以你需要记录下这个临时密码,留到后面第12步登录时使用。

mysql官方手册:

C. 源码编译安装,参考博文://www.jb51.net/article/94291.htm

/etc/init.d/mysql start or service mysql start
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf &

如果需要配置文件请在下方评论留邮箱,我会发送给你。

ln -s /opt/mysql/mysql-5.6.29-linux-glibc2.5-x86_64  /usr/local/mysql  做一个软链接过去/usr/local/mysql
原来已经有mysql软链接 ,需要unlink /usr/local/mysql

命令: cp ~/mysql3306.cnf /data/mysql/mysql3306/

 

  1. 增加Mysql用户和Mysql用户组

启动了之后才生成auto.cnf文件

小结:

mysql
mysqlbinlog
mysqld
mysqld_safe
perror
mysqldump

命令: mysql --socket=/tmp/mysql3306.sock -uroot -p

总结

  1. 初始化Mysql:
  1. 安全加固
    连接mysql:mysql -uroot -p -S /data/mysql/mysql3306/tmp/mysql.sock
    --不设置随机密码跟5.6一样,不输入密码直接登录mysql
    --设置随机密码,连接mysql的时候要输入随机密码才能登录mysql,并且需要修改密码才能让你进行下一步操作

A. 简单方便,可以自己DIY配置文件,非常推荐这种方式。

drop database test;

修改密码:
mysqladmin -u USER -p password PASSWORD
或者
use mysql;
UPDATE user SET password=PASSWORD('123456') WHERE user='root'; 5.6
flush privileges;
或者
use mysql;
UPDATE user SET authentication_string=PASSWORD('123456') WHERE user='root'; 5.7
flush privileges;
或者
5.7新增方法
alter user user() identified by '123456' ;

alter user root@localhost identified by '123456' ;

select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+

 

 

  1. iptables开放mysql端口

怎么确认mysql是启动起来的?
A 查看进程是否存在
ps axu |grep mysqld

ps -eo ppid,pid,user,args |grep mysql

B 查看端口是不是监听正确
netstat -nalp |grep mysqld
ss -lnpt |grep mysqld

C 看看错误日志有无异常
vim shit+g
tail

sock 是unix domain的一种通信方式,进程间通信

rpm,二进制包,源码包 安装优劣性   rpm包和二进制包都是从源码包得来的
生产环境用二进制,源码包的性能提升基本上没有提升相对于二进制,所以可以用二进制
mysql官网都推荐用二进制

 

mysql5.7.20之前默认会生成两个用户
root@localhost
mysql.sys@localhost

mysql5.7.20以及之后默认会生成三个用户
root@localhost
mysql.sys@localhost
mysql.session@localhost


个性化设置 MySQL prompt 提示符
 

 

 

 


cd /usr/local/mysql/再执行./scripts/mysql_install_db的原因

./ 表示 你在mysql目录里,如果你不 cd到mysql目录,那就找不到./bin/my_print_defaults文件
所以
先  cd /usr/local/mysql/
再  ./scripts/mysql_install_db  --defaults-file=/etc/my.cnf

 

f

[注意]这个命名关闭socket为3306端口的mysql。这也是这个Mysql安装方式的一个好处, 你可以拥有多个实例,然后方便管理对应的实例,你可以选择关闭对应的一个Mysql实例。 现在你已经成功安装并且登录使用Mysql,你可以在这个基础上拷贝修改配置文件,然后创建一个 端口为3307的实例。Enjoy yourself!

如果缺少libaio库需要安装 :yum install -y libaio*
Linux开发包: yum groupinstall  -y  'Development tools'

创建完成后,我们把第6步的配置文件拷贝到路径/data/mysql的目录mysql3306下

--不设置随机密码 (建议不设置随机密码 )
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf  --initialize-insecure

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  1. 创建用户
    useradd  -M -s /sbin/nologin mysql

  2. 创建必须的目录
    mkdir -p /usr/local/mysql
    mkdir -p /data/mysql/mysql3306/{data,tmp,logs}

参考博文2://www.jb51.net/article/94284.htm

 

3.安装二进制Mysql

  1. 环境变量
    echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
    source /etc/profile

命令:mysqld --initialize datadir=/data/mysql/mysql3306/data/

mysql_install_db是一个perl脚本

1.下载安装包至根目录。

mysql  /opt/mysql/xxx   一般安装在/opt下面

A. 下载Mysql的二进制安装包,配置个人的配置文件进行使用。


Mysql需要进行配置。一般,如果你没有自己定义的配置文件,Mysql会先到 etc 目录下找my.cnf文件作为配置文件, 如果没有,它会继续到/usr/local/mysql路径下的 etc 目录下去找。这里我使用的是自己的配置文件。


命令: cd /opt/mysql

  1. 权限
    chown -R mysql:mysql /data/mysql/mysql3306/
    chown -R mysql:mysql /usr/local/mysql

命令: mysqladmin --socket=/tmp/mysql3306.sock -uroot -p shutdown

 

A: 哈哈,可以去看看《Mysql必知必会》来使用玩耍,巩固自己的Mysql知识技能。

不要用root启动mysql,系统不会限制root的资源 ,ulimit,最好用普通用户去跑mysql

Q: 相信你已经学会了如何安装Mysql了。那么然后呢?

地址:
选择Linux Generic

Q: 这个Mysql启动时和登录命令比yum安装的复杂繁琐,怎么办?

成功登录后,你会发现你无法使用” show databases; “来查看数据库。 这里我们需要做点修改,登录Mysql后敲命令。 第1步:为方便后续登录,我们把root账户密码修改为123456。 命令: alter user root@localhost identified by ‘123456'; 第二步:释放权限 命令: flush privileges; 如图:

  1. 关闭mysqld:

参考博文1:

[注意]输入第9步时记录的密码。 如图

命令:ls -lh /usr/local/

1.安装方法有哪几种?

参考博文3://www.jb51.net/article/94287.htm

2.上面安装方式的优缺点。

Mysql是比较常用的数据库,日常开发中也是采用地比较多。工欲善其事必先利其器,本文特地来讲解下如何在centos下安装Mysql。首先准备的材料:Mysql,我这里采用的是64位的,传送门:

  1. 创建存储Mysql数据,日志,socket的文件夹

在profile文件最后一行加上下面代码:PATH=$PATH:/usr/local/mysql/bin

命令: mkdir -p /data/mysql/mysql3306/{data,logs,tmp}

命令: mysqld --defauslts-file=/data/mysql/mysql3306/mysql3306.cnf &

编辑:江苏十一选五手机版数据库 本文来源:Centos下Mysql安装图文教程_Mysql_脚本之家,第一节

关键词: