点击上方SQL数据库开发,关注获取SQL视频教程
SQL专栏
SQL数据库基础知识汇总
SQL数据库高级知识汇总
Linux环境对大多数SQL初学者还是比较陌生,今天给大家演示一下如何在Linux环境下安装MySQL数据库。
测试环境
CentOS 7.0
创建用户
我们进入到CentOS后,打开终端命令窗口,新建一个msql用户,并输入密码
注意:这里提示新的密码必须不少于8个字符,只是警告而已,可以不用理会。
下载MySQL
我们去MySQL的官网下载我们需要的安装包,这里我们下载5.6.64版本的。
地址:
/downloads/mysql/5.6.html#downloads
因为我们的CentOS是64位的操作系统,我们选择64位的安装包。
如下图:
然后将需要的文件下载到指定目录下面,这里因为我们刚新建了一个mysql的用户,在home目录下就有一个mysql子目录了,我们将安装包放到这里。
cd/home/mysql && wget //Downloads/MySQL-5.6/mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
解压MySQL安装包
我们将目录切换到msql目录下面,开始解压下载好的的安装包
tarvxzfmysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
重命名解压后的文件夹
mvmysql-5.6.46-linux-glibc2.12-x86_64mysql-5.6.46
新建配置文件
在mysql目录下面新建一个f文件
vi/home/mysql/port-3306/f
具体内容如下:
default-character-set=utf8 #客户端连接编码 [mysql] auto-rehash #客户端tab补全 default-character-set=utf8 #编码 [mysqld] user=mysql #运行账户 port=3306#定义端口 log-bin=mysql-bin#开启二进制日志 server-id=1001#定义服务ID binlog_format=row# binlog类型 binlog_do_db=MDA # 设置binlog数据库 max_allowed_packet=50M ###最大 wait_timeout=30###等待超时默认s interactive_timeout=30###活动超时 innodb_buffer_pool_size = 128M join_buffer_size = 128M sort_buffer_size = 2M read_rnd_buffer_size = 2M basedir=/home/mysql/mysql-5.5.61#MYSQL根目录 datadir=/home/mysql/port-3306/data#MYSQL数据存放目录 socket=/home/mysql/port-3306/3306_mysql.sock #套接字 init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8 #定义数据库默认字符 server\collation collation-server=utf8_unicode_ci skip-character-set-client-handshake symbolic-links=0 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES lower_case_table_names = 1#对表的大小写不敏感 [mysqld_safe] log-error=/home/mysql/port-3306/logs/err.log #错误日志 pid-file=/home/mysql/port-3306/mysqld.pid #pid,多协议通信 tcp/sock[client]
开始安装
安装之前我们需要安装mysql需要的一些依赖文件
yum install-y libaio
初始化数据库
cd /home/mysql/mysql-5.6.46&& scripts/mysql_install_db --basedir=/home/mysql/mysql-5.6.46 --datadir=/home/mysql/port-3306/data --defaults-file=/home/mysql/port-3306/fmkdir -p /data/mysql/port-3306/data
注意:生产环境推荐采用这种方式
/home/mysql/mysql-5.6.46/bin/mysql_secure_installation移除测试数据库和匿名用户。
启动服务器
启动前要修改一下mysql目录下的属性
chown mysql:mysql/home/mysql/*
创建日志目录
/home/mysql/mysql-5.6.46/bin/mysqld_safe --defaults-file=/home/mysql/port-3306/f --user=mysql &mkdir -p /home/mysql/port-3306/logs && mkdir -p /home/mysql/port-3306/data && touch /home/mysql/port-3306/logs/err.log;
修改管理员密码
/home/mysql/mysql-5.6.46/bin/mysqladmin -uroot password 'sqlroad'-S /home/mysql/port-3306/3306_mysql.sock -hlocalhost -P3306
开放外网连接权限
/home/mysql/mysql-5.6.46/bin/mysql -S /home/mysql/port-3306/3306_mysql.sock -hlocalhost -P3306 -uroot -p'sqlroad'
执行脚本
FLUSHPRIVILEGES;GRANTALL PRIVILEGESON*.* TO'root'@'%'IDENTIFIEDBY'sqlroad'WITHGRANTOPTION;
连接
/home/mysql/mysql-5.6.46/bin/mysql -S /home/mysql/port-3306/3306_mysql.sock -hlocalhost -P3306 -uroot -p'sqlroad'
远程连接
查看本机防火墙,如果运行,也需要开启3306端口,命令如下:firewall-cmd --permanent --zone=public --add-port=3306/tcp; firewall-cmd --complete-reload;systemctl status firewalld;
备注:千万不要忽略本机防火墙。
——End——
关注SQL数据库开发公众号,在后台回复关键字:资料领取,可以获取一份精心整理的技术干货。
推荐阅读
Linux 运维中最常用 150 个命令汇总
原创 | SQL优化之不查询多余的行和列
原创 |除了会排序,你对ORDER BY的用法可能一无所知!
点击「」了解SQL训练营