Code前端首页关于Code前端联系我们

linux mysql8编译安装简介

terry 2年前 (2023-09-30) 阅读数 36 #Mysql
文章标签 Mysql

本文内容列表:

  • 1.如何在linux上编译安装mysql
  • 2、linux下如何安装mysql
  • 3、如何在Linux上编译安装mysql?

如何在linux上编译安装mysql

不同版本的Linux,安装不同版本的mysql的方式也不同。下面介绍在CentOS 6.5下编译安装MySQL 5.6.16:

1。准备工作

1.yum安装各依赖包

[ root@WebServer ~]# yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automake* zlib* libxml* ncurses-devel ncurses libgcrypt* libtool* cmake openssl openssl-devel bison bison-devel 解压缩

2。创建新的 mysql 组和用户

[root@WebServer ~]# groupadd mysql

[root@WebServer ~]# useradd -g mysql -s /sbin/nologin mysql

3.目录准备

[root@WebServer ~]# mkdir -p /webserver/mysql/etc

[root@WebServer ~]# mkdir -p /webserver/mysql/data

[root ~]#WebServer mkdir -p / webserver/mysql/tmp

[root@WebServer ~]# chown -R mysql.mysql /webserver/mysql

4.解压MySQL,进入安装目录

[root@WebServer ~]# tar zxvf mysql- 5.6.16.tar.gz

[root@WebServer ~]# cd mysql-5.6.16 2.编译并安装

1。 MySQL的编译

[root@WebServer mysql-5.6.16]# cmake -DCMAKE_INSTALL_PREFIX=/webserver/mysql \

-DSYSCONFDIR=/webserver/mysql/etc \

-DATAERDMYSQL_DATA - DMYSQL_TCP_PORT=3306 \

-DMYSQL_UNIX_ADDR= /webserver/mysql/tmp/mysqld.sock \

-DMYSQL_USER=mysql \ =全部 =全部 WI-DSET _READLINE=1 \

-DWITH_SSL =系统 \

-DWITH_EMBEDDED_SERVER=1 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

=DENABLE_DOWNLOADS=1 如果出现以下错误

需要

[root@WebServer mysql-5.6.1 6]# 光盘source_downloads/

[root@WebServer source_downloads]# 解压 gmock-1.6.0. WebServer source_downloads]# ./configure

[ root@WebServer source_downloads]# make

[root@WebServer source_downloads]# cd . .

然后删除mysql-5akey目录下的CMakeCache.txt。编译并安装

2。安装

[root@WebServer mysql-5.6.16]# make make install

编译过程会需要一些时间,编译时间取决于机器的性能

3。 MySQL配置

1、链接客户端库文件(如果不执行此步骤,PHP编译时会要求找不到MySQL文件)

[root@WebServer mysql-5.6.16]# ln -s /webserver/ mysql/lib / libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18

ps:我使用的是 CentOS 64 位。如果使用的是32位,使用ln -s /webserver/mysql/lib/libmysqlclient.so .18 /usr/lib/libmysqlclient.so.18

2.Mysql启动文件配置

[root@WebServer mysql -5.6.16]# cp support-files/mysql.server /etc/init.d /mysqld

[root@WebServer mysql-5.6.16]# chmod +x /etc/init.d/mysqld

[root@WebServer mysql-5.6.16]# vim /etc/init.d/mysqld

basedir=/webserver/mysql

datadir=/webserver/mysql/data /d 以上 2 行

3。设置MySQL配置文件

[root@WebServer mysql-5.6.16]# cp support-files/my-default.cnf /webserver/mysql/etc/my.cnf

[root@WebServer mysql-5.6. 16]# rm -rf /etc/my.cnf

[root@WebServer mysql-5.6.16]# ln -s /webserver/mysql/etc/my.cnf /etc/my.cnf

4.数据库初始化

[root@WebServer mysql-5.6 .16]# cd /webserver/mysql

[root@WebServer mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/webserver/mysql --datadir=/webserver/mysql/data

5. MySQL命令链接(这一步可以方便我们很多,命令路径不需要写出来,也可以从/etc/profile写在PATH中)

[root@WebServer~] # cd /usr/sbin

[root@WebServer sbin]# ln -s /webserver/mysql/bin/* .

6。启动 MySQL 并配置启动时启动

[root@WebServer sbin]# service mysqld start ;chkconfig mysqld on

启动 MySQL.. 成功!

7. 设置 MySQL root 用户密码

[root@WebServer ~]# mysqladmin -u root 密码 123456

这里设置 MySQL root 密码为 123456,不建议设置数据库密码一个简单

8.删除空用户密码的用户

[root@WebServer ~]# mysql -u root -p

输入密码:

mysql using mysql;

mysql从用户中选择主机、用户、密码;

+----------+------+------------- - -------------- ---+

|主持人|用户|密码 |

+----------+------ +------------- -------------- - -----+

|本地主机 |根 | * 6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

|网络服务器|根 | |

| 127.0.0.1 |根 | |

| ::1 |根 | |

|本地主机 | | -----------------------+---------------- --------- - +

集合中的6行(0.00秒)

mysql从密码=“”的用户中删除;

查询正常,5行受影响(0.00秒)

mysql刷新权限;

查询OK,0行(0.00秒)

mysql select Host,User,Password from user;

+----------+--- 受影响 ---+---------------- ------------- - -----+

|主持人|用户 |密码 |

+----------+-----+---------------- -------------- ---+

|本地主机 |根 | * 6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

+----------+------+----------------------------------------- - --------------+

1 行集合(0.00 秒)

mysql 退出;

完成。

如何在linux上安装mysql

1。在liunx中安装第一个Mysql数据库

~$ sudo apt-get install mysql-server #安装Mysql服务器

~$ ps -aux|grep mysql #检查Mysql服务器进程

01 030300000000000000 3604 pts /7 S+ 5 月 20 日 0:00 mysql -u root -p

mysql 25125 0.0 0.0 4472 1704 ? ss 09:51 0:00 /bin/sh /usr /bin/ mysqld_safe

mysql 25496 0.0 3.1 859956 127084 ? Sl 09:51 0:01 /usr/sbin/mysqd --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib /mysql/plugin --log-error=/ var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306

beili 26652 0.0 0.0 13708 2180 pts/19 S+ 10:32 0:00 grep --color=auto mysql

~$ netstat -nlt|grep 3306 #查看Mysql服务器占用的端口

tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN

~$ /etc/init.d/mysql status # 通过启动命令查看Mysql服务器状态

Loaded: returned (/lib/systemd/system/ mysql.service;活动;供应商预设:活动)

活动:自 2015 年 5 月 21 日星期四 09:51:13 CST 起活动(运行); 43分钟前

进程:25126 ExecStartPost=/usr/share/mysql /mysql-systemd-start post(代码=退出,状态=0/SUCCESS)

进程:25122 ExecStartPre=/usql/share/mysql -systemd -start pre (code=exited, status=0/SUCCESS)

~$ service mysql status # 通过系统服务查看Mysql服务器状态

● mysql.service - MySQL社区服务器

Loaded: 已加载 (/lib /systemd/system/mysql.service;启用;供应商预设:启用)

活动:自 2015 年 5 月 21 日星期四 09:51:13 CST 起活动(运行); 44分钟前

进程:25126 ExecStartPost=/usr/share/mysql/mysql-systemd-start post(代码=exit,status=0/SUCCESS)

Process: 25122 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exit, status=0/SUCCESS)

~$ whereis mysql # 查看各个mysql文件安装的目录

mysql :/usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

2。 mysql访问及配置

$ mysql -u root -p

输入密码:

mysql的默认字符集是latin1,所以要改为utf8。网上很多文章运行“sudo vi /etc/mysql/my.cnf”,但是我打开的时候只有两行:

!includedir /etc/mysql/conf.d/

!includedir /etc /mysql/mysql.conf.d/

我以为mysql的配置文件应该在这两个文件夹中,于是尝试打开/etc/mysql/mysql.conf.d/中的mysqld.cnf文件。运行以下命令:

~$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

...

[client]

default-character-set=utf8 [mysqld_safe]

socket = /var/run/mysqld/mysqld.sock

nice = 0

[mysqld]

字符集服务器=utf8❀...

注:棕色部分为附加内容

重启mysql服务,检查字符集设置:

~$ sudo /etc/init.d/mysql restart

~ $ mysql -u root -p

mysql 显示类似“%char%”的变量

+----------------------------+--------- - --------------------------------+

|变量名 |值 |

+-------------------------------- ------------------------ ---- ----------+

|字符集客户端 | utf8 |

|字符集连接 | utf8 |

|字符集数据库 | utf8 |

|字符集文件系统 |二进制 |

|字符集结果 | utf8 |

|字符集服务器 | |字符集目录 | /usr/share/mysql/charsets/ |

linux 如何编译安装mysql?

使用二进制安装,文件名 mysql-standard-5.0.18-linux-i686-glibc23.tar.gz

[1] 将上面的文件解压到某处,然后将 MySQL 目录重命名为 mysql ,结果应该是/home/xxx/mysql

[2] 根据mysql目录下的INSTALL-BINARY文件安装

// 添加mysql用户组,以及mysql用户;该命令无需修改

shell groupadd mysql

shell useradd -g mysql mysql

//下面三步主要目的是创建MySQL解压目录的链接,放到usr/local目录下

//首先是进入/usr /本地目录;此命令不需要修改

shell cd /usr/local

// 这一步不是必须的,因为已经解压了

shellgunzip /PATH/TO/MYSQL-VERSION-OS.tar.gz | tar xvf -

// 创建一个指向 /home/xxx/mysql 的链接并将其放在 /usr/local 中。链接的名称是 mysql。

// 该命令转换为 ln -s /home/xxx/mysql mysql

shell

ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql

//进入/home目录/xxx/mysql,/usr/local/mysql是/home/xxx/mysql的链接

shell

cd mysql

//初始化MySQL(如果之前已经安装过MySQL,这一步可以简短的);该命令不需要修改

shell script/mysql_install_db --user=mysql

//更改所有权;该命令无需修改

shell chown -R root .

shell chown -R mysql data

shell chgrp -R mysql .

//启动MySQL服务器;该命令无需修改

shell bin/mysqld_safe --user=mysql

[3] 进入MySQL应用环境

进入命令下面的mysql目录Bin目录,运行命令./mysql -u root

- p。密码:会出现(需要密码),但是默认root用户没有密码,所以直接回车即可。此时你将进入MySQL界面,当然这仍然只是一个命令行窗口。

[4]MySQL简单使用

运行显示数据库命令; MySQL环境下,会显示已有的数据库(如test);运行test use命令,就会进入test数据库...

注意:如果运行 ./mysql -u root -p 后,会出现错误

Cannot connect to local MySQL server via socket '报出 /tem /mysql.sock'

,那么可能会出现以下情况:

[1]mysql.sock 不在 /tmp 目录下,而是在其他目录下(例如 /var/ lib/mysql 目录)。此时,你只需要将这个mysql.sock链接到/tmp目录并运行命令:

ln -s MYSQL.SOCK_PATH /tmp/mysql.sock

[2] 在Linux上从笔记本电脑同学,它会在/tmp中创建Mysql.sock,但是重新启动Linux后,该文件被删除。此时,也可以使用情况2的解决方案,或者每次运行命令:./mysqld_safe --user=mysql

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门