网站首页 > 技术文章 正文
一、什么是 MySQL 数据库?
MySQL 数据库是一个关系型数据库管理系统,是服务器领域中受欢迎的开源数据库系统,目前有 Oracle 公司主要负责运营与维护。
二、MySQL 数据库的特点
- 多线程、多用户;
- 简单易用、查询速度快;
- 安全可靠;
- 基于 C/S 架构;
三、MySQL 数据库的编译安装
避免出现端口和程序冲突的现象,先查询 MySQL 软件的安装情况,确认没有使用以 RPM 方式安装的 mysql-server、mysql 软件包,否则将其卸载,并安装自带的 ncurses-devel 包;
# rpm -q mysql-server mysql
package mysql-server is not installed
mysql-5.1.71-1.el6.x86_64
# rpm -ivh /mnt/Packages/ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
Preparing... ########################################### [100%]
package ncurses-devel-5.7-3.20090208.el6.x86_64 is already installed
解压 cmake 包,编译并安装 cmake 包;
# tar zxf cmake-2.8.6.tar.gz
# cd cmake-2.8.6
# ./configure
# gmake && gmake install
创建运行用户,从而加强数据库服务的权限控制,使用新创建的运行用户,此运行用户不需要直接登录到系统,可以不创建宿主文件夹。
# groupadd mysql
You have new mail in /var/spool/mail/root
# useradd -M -s /sbin/nologin mysql -g mysql
将下载的 MySQL 源码包进行解压,释放到 /usr/src 目录下,并切换到源码目录。
# tar zxf mysql-5.5.22.tar.gz -C /usr/src
# cd /usr/src/mysql-5.5.22/
配置会用到多种字符集的网页,可为数据库系统支持不同的字符集编码,将默认使用的字符集设置为 utf8,并添加其他字符集的支持。
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
上述配置命令中,各选项参数的含义:
// -DCMAKE_INSTALL_PREFIX:指定将 mysql 数据库安装到某个目录下;
// -DSYSCONFDIR:指定初始化参数文件目录;
// -DDEFAULT_CHARSET:指定默认使用的字符集编码;
// -DDEFAULT_COLLATION:指定默认使用的字符集校对规则;
// -DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码;
编译并安装
# make && make install
对数据库目录进行权限设置
# chown -R mysql:mysql /usr/local/mysql
You have new mail in /var/spool/mail/root
MySQL 源码目录中的 support-files 文件夹下,提供了适合不同数据库的样本配置文件,在不确定数据库系统的应用规模下,选择 my-medium.cnf 文件,可满足企业的应用需求,并根据内容建立 MySQL 数据库系统的 /etc/my.cnf 配置文件。
# rm -rf /etc/my.cnf //如果原来 etc 文件夹下有 my.cnf 文件则可以删除
# cp support-files/my-medium.cnf /etc/my.cnf
初始化数据库,将运行用户 mysql 的身份执行初始化脚本 mysql_install_db,指定数据存放目录等;
# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
验证数据库是否初始化成功:
为方便在任何目录下使用 MySQL 命令,需要在 /etc/profile 设置环境变量;
# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
You have new mail in /var/spool/mail/root
# . /etc/profile // 立即生效
将 support-files 文件夹下的 mysql.server 脚本文件,将其复制到 /etc/rc.d/init.d 目录下并改名为:mysqld,设置执行权限,通过 chkconfig 命令添加为 mysqld 系统服务。
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
若启动 mysqld 系统服务,可使用 service 工具或执行 /etc/init.d/mysqld 脚本来控制 MySQL 数据库服务,当 mysqld 系统服务启动后,可执行 netstat -anpt | grep mysqld 命令来进行验证 TCP 端口是否已经监听到了;
# service mysqld start
Starting MySQL.. [确定]
# /etc/init.d/mysqld status
MySQL running (59041) [确定]
# netstat -anpt | grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 59041/mysqld
四、访问 MySQL 数据库
访问 MySQL 数据库时,我们可以使用 Linux 系统中自带的客户端 mysql 命令工具。默认的管理员用户为:root,密码为空。
若要使用未设置密码的 root 用户登录 MySQL 数据库时,可直接执行 mysql -u root 命令即可登录;
若要使用设置了密码的 root 用户登录 MySQL 数据库时,可直接执行 mysql -u root -p 命令输入正确的密码即可登录;
登录成功后,会进入提示符为“mysql>”数据库的操作环境,可在该环境下输入各种 sql 语句对数据库进行管理,切记每条 sql 语句以分号“;”结束,且操作的 sql 语句可不区分大小写。
执行“show master logs”语句查看当前数据库服务的日志文件信息。
若要退出“mysql>”数据库的操作环境,可执行“exit”或“quit”命令可退出 mysql 命令行工具。
作者:杰哥的IT之旅
原文链接:https://juejin.cn/post/6976006631028949022
猜你喜欢
- 2024-11-05 吃透这份MySQL调优核心,面试可以横着走,奥利给
- 2024-11-05 软件测试员必备:面试时常问的15个MySQL数据库查询语句
- 2024-11-05 Spring-data-jpa入门 spring jpa入门
- 2024-11-05 Windows环境下19C一主二备的ABB架构的物理DG搭建
- 2024-11-05 centOS7 单机 mysql 5.7.24 主从 mysql主从命令
- 2024-11-05 颠覆你的认知!MySQL深度优化四件套:深度优化+面试集锦+思维导图
- 2024-11-05 面试官:有没用sysbench做过mysql的基准测试?
- 2024-11-05 第02期:单机部署以及从 MySQL 增量同步数据
- 2024-11-05 学习java需要什么软件 学java要下什么软件
- 2024-11-05 天猫面试官:你了解MySQL数据库设计和应用么?我人傻了
你 发表评论:
欢迎- 619℃几个Oracle空值处理函数 oracle处理null值的函数
- 612℃Oracle分析函数之Lag和Lead()使用
- 601℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 597℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 593℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 584℃【数据统计分析】详解Oracle分组函数之CUBE
- 574℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 562℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)