Linux-MySQL安装

CentOS MySQL5.7安装:

MySQL相关的三个程序包

mysql程序包程序包功能
mysql-server运行mysql服务, 服务器自身带有mysql连接命令(数据库管理相关服务命令)
mysql-client连接远程主机运行的mysql服务, 带有mysql连接命令
mysql-develmysql开发库, 包含了mysql头文件,共享库文件(供本地C编程操纵mysql使用)

mysql_config 用来列出mysql开发库文件以及头文件的位置,所以该命令只存在于mysql-server, mysql-devel包中;

MySQL在CentOS下可以采取三种安装模式

安装方式安装便捷性
rpm 安装可以下载好指定版本的软件包进行解压,但是安装位置确定(不可更改,不利于自己了解mysql的配置,对于新手很懵)
yum 安装rpm的升级版,效果和rpm安装相同, 可以解决依赖(mysql安装无依赖);
在不更新软件源的情况下,只能下载到5.6版本的MySQL
压缩包安装(tar.gz)可以下载任意版本的软件包,自定义安装位置,自定义配置文件(这个包是三个开发包的综合)

​ MySQL的下载在清华镜像MySQL中均可以搜索到,我们可以自己下载rpm包到windows本地研究压缩包里面的文件结构,本文采用tar包安装的方式,快捷方便,熟悉这种方式后可以采用其他方式。

在root 用户下将mysql安装在/usr/local下:

一、 安装初始化MySQL:

(1) 下载mysql5.7 tar包:

wget https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.34-el7-x86_64.tar.gz
# 链接可能会失效,在清华镜像自己找

(2) 解压tar包到/usr/local:

# 解压文件
tar -xzf mysql-5.7.34-el7-x86_64.tar.gz -C /usr/local
# 进入目录
cd /usr/local
# 重命名文件
mv mysql-5.7.34-el7-x86_64 mysql

(3) 创建mysql配置文件/etc/my.cnf

[mysqld]
basedir=/usr/local/mysql					    # mysql根目录
datadir=/usr/local/mysql/data					# 数据目录
socket=/usr/local/mysql/mysql.sock      		 # socket文件位置
log-error=/usr/local/mysql/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid   	

(4) 初始化数据库:

./bin/mysqld --initialize
# 将会在mysql日志文件中产生一个初始登录密码

二、启动并使用MySQL:

​ support/mysql.server是mysql的服务启动脚本,调用了bin/mysqld_safe命令,mysqld_safe是一个shell脚本,默认使用mysql用户启动服务,在没有创建mysql用户的情况下,我们使用root用户启动mysql

(1) 在support/mysql.server 中找到mysqld_safe 并在后面添加–user=root

case "$mode" in
  'start')
    # Start daemon
    # Safeguard (relative paths, core dumps..)
    cd $basedir

    echo $echo_n "Starting MySQL"
    if test -x $bindir/mysqld_safe
    then
      # Give extra arguments to mysqld with the my.cnf file. This script
      # may be overwritten at next upgrade.a
      $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" 

(2) 服务设置为系统服务:

# 拷贝并重命名文件
cp support-files/mysql.server /etc/init.d/mysqld
# 启动服务
service mysqld start
# 查看服务(多种方式)
ps -ef|grep mysql
# service mysqld status
# netstat -nultp| grep 3306

(3) 登录mysql(服务器本机登录):

# 添加环境变量
vi /etc/profile
# 加入如下内容
# PATH=$PATH:/usr/local/mysql/bin
# 生效文件 source /etc/profile

# 登录mysql并操作, 密码见mysql.log
# vi /usr/local/mysql/mysql.log,在文件头几行找到初始密码:
# [Note] A temporary password is generated for root@localhost
mysql -u root -p

(4) 常见错误:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket '/tmp/mysql.sock’

  • 由于服务器本机登录会忽略mysql -h 选项,可以为文件创建软链接:ln -s /usr/local/mysql/mysql.sock /tmp/mysql.sock

  • 使用-h选项登录(远程登录必须使用,仅在本地登录出现):mysql -h 127.0.0.1 -u root -p

(5) 远程登录授权:

# 修改登录密码:
> alter user 'root'@'localhost' identified by '123456';
# 允许远程登录:
> grant all privileges on *.* to 'root'@'%' identified by ‘123456’ with grant option;
# 刷新命令生效:
> flush privileges;

(6) 写在最后:关于mysql C编程

   6.1 开发与mysql服务在同一台机器: tar包安装的mysql根目录下存在include和lib两个相关库文件,将这两个文件夹下的内容分别拷贝到/usr/include和/usr/lib64下(或者创建软链接),另一种方式就是下载mysql-devel开发库包:

# 创建文件夹,存在即可
mkdir /usr/include/mysql/
mkdir /usr/lib64/mysql
# 移动文件
cp /usr/local/mysql/include/* /usr/include/mysql
cp /usr/local/mysql/lib/* /usr/lib64/mysql

# 另一种方式: yum install -y mysql-devel

   如果一个应用进行源码编译(使用了mysql)需要和mysql服务部署到同一台服务器上(资源有限以及个人学习情况下),./configure的时候,程序只会在系统默认的头文件位置(/usr/linclude)和共享库位置(/usr/lib64)进行寻找,没有的话就会报错。

   6.2 开发与mysql服务不在同一台服务器:安装mysql库开发包,可以yum安装,也可以下载与mysql服务器同版本的rpm包进行解压。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Linux安装MySQL,你可以按照以下步骤进行操作: 1. 下载MySQL安装包。你可以从MySQL官方网站上获取安装包的下载地址\[3\]。使用wget命令下载安装包,并解压缩到指定目录。 2. 进入解压缩后的MySQL目录,并进行一些必要的设置。你可以根据需要修改MySQL的配置文件,如my.cnf文件。 3. 运行安装脚本进行MySQL安装。根据你的需求选择合适的安装方法,可以是源码安装、编译安装、yum安装或rpm安装\[2\]。 4. 安装完成后,你可以启动MySQL服务,并设置MySQL服务在系统启动时自动启动。 5. 进行一些常用的设置,如设置MySQL的root密码、创建新的数据库和用户等\[1\]。 通过以上步骤,你就可以在Linux上成功安装MySQL了。如果在安装过程中遇到问题,可以参考相关文档或搜索解决方案。 #### 引用[.reference_title] - *1* [Linux-安装MySQL(详细教程)](https://blog.csdn.net/u013733643/article/details/128970496)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Linux多种方法安装mysql](https://blog.csdn.net/m0_37739193/article/details/77477547)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值