centos8下安装mysql5.7.23

mysql-5.7.23安装包自行下载

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

1.将装备的tar.gz格式的安装包上传到centos8服务器中,进行解压
或者使用wget命令直接下载,但需要可以访问外网

tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

解压完成后,删除压缩包,并将文件夹改名为mysql。

rm -rf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql

创建mysql用户,并更改/usr/local/mysql目录的权限 因为Linux特定的软件要用特定的用户、用户组来运行

useradd -r -s /sbin/nologin mysql

使用 id mysql 查看是否创建成功

id mysql
uid=989(mysql) gid=985(mysql) groups=985(mysql)

使用命令更改文件权限用户,此处的-R起递归作用

chown -R mysql.mysql /usr/local/mysql/

初始化mysql,切换到mysql/bin 目录下。localhost后面的是临时密码,在初次登陆时使用

在装mysql8时:
设置大小写–lower-case-table-names=1不区分大小写的问题上踩了很多坑,也可能不是这种设置方式吧,本身就是一个小白,不会的也去百度,跌跌撞撞,装完之后能用就行了。。。

[root@iZw2fe9o7s1zh3Z bin]# ./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize --lower-case-table-names=1
2020-07-31T02:18:06.539202Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2020-07-31T02:18:07.592266Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-07-31T02:18:07.709475Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-07-31T02:18:07.771767Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 12c05c5c-d2d4-11ea-863f-00163e11e0d0.
2020-07-31T02:18:07.773617Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-07-31T02:18:07.774147Z 1 [Note] A temporary password is generated for root@localhost: pACaa,yu,3xo  这里是随机生成的临时密码,待会首次登陆需要使用

复制suport-files目录下的mysql.server脚本到/etc/init.d目录一份,方便以后使用service命令管理软件

cp suport-files/mysql.server /etc/init.d/mysql
这里将mysql.server文件复制到etc下时,一定要有最后面的mysql,否则在通过service mysql start命令启动时,找不到该命令

启动mysql

service mysql start
# service mysql stop
Starting MySQL.Logging to '/usr/local/mysql/data/iZw2fe9o7s1zh3Z.err'.
                                                           [  OK  ]    OK证明启动成功

登陆,密码默认不显示,正常输入后敲回车即可,此处密码为临时密码。

1 [root@localhost mysql]# bin/mysql -uroot -p
2 Enter password: 

登陆进去后,如果不提示修改密码,自己进行修改密码

1 mysql> SET PASSWORD = '这里填写你的密码';
2 Query OK, 0 rows affected (0.02 sec)   出现该字样则修改成功。

授权访问,此处需要创建一个新用户,然后将权限授权给新用户,以后用新用户进行登录(可能会存在不同版本的授权不一样的问题)

1 mysql> CREATE USER '你的用户名字'@'限定的IP地址' IDENTIFIED BY '你的密码';  限定的IP地址,可以用通配符 % 替换,代表任何IP都可以。
2 Query OK, 0 rows affected (0.02 sec)
3 
4 mysql> GRANT ALL ON *.* TO '你的用户名字'@'%';
5 Query OK, 0 rows affected (0.00 sec)

此时,所有操作都做完,你可以在Windows上使用MySQL Workbench进行远程访问服务器上的数据库。

由于从MySQL 5.7.18开始不在二进制包中提供my-default.cnf文件。参考:网址

以下复制参考文章:
经过测试,在5.7.18版本中,使用tar.gz安装时,也就是压缩包解压出来安装这种,已经不再需要my.cnf文件也能正常运行。
my.cnf文件就是把在命令行上启动MySQL时后面的参数用cnf文件配置好,那么下载启动时就不再需要在命令上加如参数。
所以:安装mysql5.7.18之后的版本就不需要再路径/etc下面配置my.cnf文件也可以了,但是如果需要开启MySQL的慢查询或者时主从复制的功能还是需要在/etc下面配置my.cnf文件的,但是只需要复制跟自己使用功能相关的配置即可没必要全部复制

在后期的使用中发现数据库表名的大小写问题,由于在windows下是不区分大小写的,但到了linux环境下就需要设置是否区分大小写,然后去网上进行百度,说是设置/etc/my.cnf文件,然而在这个etc目录下并没有 发现这个文件,然后再去进行百度,发现了这个,然后在etc目录下新建了my.cnf文件,复制进去了一下内容:

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 
lower_case_table_names=1

温馨提示:需要什么去复制什么,不要复制太多,再出现其他问题。这里我只想解决不区分大小写,我设置了***lower_case_table_names=1***这个。

搭建参考文章:https://www.cnblogs.com/mohou/p/12444327.html
处理mysql不区分大小写参考文章:https://blog.csdn.net/qq_38545713/article/details/81868846

注:阿里云服务器搭建mysql数据库,需要开放3306端口,否则会出现通过数据库连接工具连接不上的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 7上安装MySQL 5.7.23的源码版本可以按照以下步骤进行: 1. 下载MySQL的源码文件:你可以在MySQL的官方网站上下载稳定版本的源码文件,选择MySQL 5.7.23的源码文件。 2. 安装编译MySQL所需的依赖项:打开终端并使用以下命令安装MySQL的编译依赖项: ``` sudo yum groupinstall "Development Tools" sudo yum install cmake sudo yum install ncurses-devel ``` 3. 解压源码文件:将下载的源码文件解压到一个自定义的目录中,例如~/mysql-src。 4. 创建MySQL编译构建目录:在终端中转到解压的源码文件目录,并创建一个新的目录用于构建MySQL源码: ``` cd ~/mysql-src mkdir build cd build ``` 5. 配置和编译MySQL:运行以下命令来配置MySQL的构建选项并编译源码: ``` cmake .. make ``` 6. 安装MySQL:运行以下命令以将编译后的MySQL安装到系统中: ``` sudo make install ``` 7. 配置MySQL:完成安装后,需要进行一些配置。可以使用以下命令复制MySQL的配置文件模板: ``` sudo cp ~/mysql-src/support-files/my-default.cnf /etc/my.cnf ``` 8. 初始化MySQL数据目录:使用以下命令来为MySQL创建一个数据目录并初始化数据: ``` sudo mkdir /var/lib/mysql sudo chown -R mysql:mysql /var/lib/mysql sudo /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql ``` 9. 启动MySQL服务:使用以下命令启动MySQL服务: ``` sudo /usr/local/mysql/bin/mysqld_safe --user=mysql & ``` 现在你应该成功地将MySQL 5.7.23源码安装CentOS 7上,并启动了MySQL服务。你可以使用MySQL客户端连接到MySQL服务器并执行必要的配置和操作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值