Linux中安装MySQL8版本,安装MySQL步骤,MySQL8离线安装

Linux中安装MySQL8版本的步骤如下:

1.检查下libaio.so.1的位置
[root@tdx ]# whereis libaio.so.1
libaio.so: /usr/lib64/libaio.so.1

如果没有找到该文件
(1).在线安装
[root@tdx ]# yum install -y libaio

(2).离线安装:
上传之后执行命令安装:
[root@tdx /]# rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

2.清空系统中的原有mariadb的配置文件(/etc/my.cnf)
[root@tdx /]# rm -rf /etc/my.cnf

3.准备mysql安装包
(1).切换目录
[root@tdx /]# cd /tdx/

(2).上传文件到此目录
mysql8.0.16-linux-glibc2.12-x86_64.tar.gz

(3).解压
[root@tdx /]# tar -zxvf mysql8.0.33-linux-glibc2.12-x86_64.tar.gz

(4).重命名
[root@tdx /]# mv mysql8.0.33-linux-glibc2.12-x86_64 mysql8.0.33

(5).切换目录
[root@tdx /]# cd mysql

(6).新建目录
[root@mysql]# mkdir data
[root@mysql]# mkdir log
[root@mysql]# mkdir pid
[root@mysql]# mkdir tmp

(7).新建配置文件
[root@mysql]# touch my.cnf

修改配置文件增加内容
[root@mysql]# vi my.cnf
增加内容

[mysqld]
port = 3306
basedir =/usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/log/mysqld.log
pid-file = /usr/local/mysql/pid/mysqld.pid
socket = /usr/local/mysql/tmp/mysql.sock
character-set-server=utf8
default-storage-engine=Innodb
max_connections=500
lower_case_table_names = 1
interactive_timeout=288000
wait_timeout=288000
net_read_timeout=900
net_write_timeout=900
max_allowed_packet=1073741824
log_bin_trust_function_creators=1
innodb_flush_log_at_trx_commit = 2
sync_binlog = 2000

key_buffer_size=8G
read_buffer_size=64K
sort_buffer_size=256K
myisam_max_sort_file_size=100G

innodb_buffer_pool_size=10G
innodb-buffer-pool-instances=8
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb-file-per-table=true
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

4.创建新用户并授权
[root@tdx /]# adduser mysql
[root@tdx /]# chown -R mysql:mysql /usr/local/mysql

5.初始化数据库(可以实现数据库的初始化,而且会产生一个随机密码)
[root@mysql8.0.33 /]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --lower_case_table_names=1
选项说明:
–initialize 初始化(真正开始干活)
–user=mysql 以mysql用户的身份初始化数据库,产生文件都是mysql作为拥有者
–basedir=xxx mysql其安装目录,非常重要
–lower_case_table_names=1 不区分大小写,初始化不指定,必须重装才能解决,非常重要

6.启动MySQL数据库
[root@mysql]# cp support-files/mysql.server /etc/init.d/mysql

注意:默认情况下,GBLIC版本的数据库要求安装到/usr/local/mysql目录,其mysql.server脚本中对应的目录也是/usr/local/mysql,这会导致mysql无法启动。所以可以更改其basedir以及datadir两个变量
[root@mysql]# vim /etc/init.d/mysql
46行 basedir=/usr/local/mysql
47行 datadir=/usr/local/mysql/data

7.启动MySQL数据库(不能使用systemctl,只能使用service)
[root@mysql]# service mysql start
Starting MySQL.2023-06-25T04:58:08.333370Z mysqld_safe error: log-error set to ‘/usr/local/mysql/log/mysqld.log’, however file don’t exists. Create writable for user ‘mysql’.
ERROR! The server quit without updating PID file (/usr/local/mysql/pid/mysqld.pid).

[root@mysql]# touch /usr/local/mysql/log/mysqld.log
[root@mysql]# chown -R mysql:mysql /usr/local/mysql/log/mysqld.log

如果启动报错:
my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
Starting MySQL.my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
my_print_defaults: [Warning] World-writable config file ‘/usr/local/mysql/my.cnf’ is ignored.
ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
这个文件:'/usr/local/mysql/my.cnf’权限给的是 777,需要改成644,再次重新启动即可。

再次启动: [root@mysql]# service mysql start
Starting MySQL… SUCCESS!
8.登录数据库
[root@mysql]# ./bin/mysql -uroot -p -S /usr/local/mysql/tmp/mysql.sock

9.修改root密码
mysql> alter user root@localhost identified by ‘Datasw@2023’;

10.创建用户
mysql> create user test@‘%’;
mysql> alter user test@‘%’ identified with mysql_native_password by ‘Datasw@2023’;
mysql> GRANT ALL PRIVILEGES ON . TO ‘test’@‘%’ WITH GRANT OPTION;
mysql> flush privileges;
mysql> quit;

10.给mysql启动命令增加一个软连接,以便任意目录登录
[root@mysql]# ln -sf /usr/local/mysql/bin/mysql /usr/bin/

以上步骤全部执行成功,就可以使用客户端链接工具链接MySQL服务的数据库了

  1. 登录终端出现的问题如下:
    [root@localhost lib]# mysql -uroot -p
    Enter password:
    ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
    ln -s /usr/local/mysql/tmp/mysql.sock /var/lib/mysql/mysql.sock
    解决方法:[root@localhost lib]# ln -s /usr/local/mysql/tmp/mysql.sock /tmp/mysql.sock 即可。

12.对目录给予权限
# chown -R mysql.mysql /data/mysql
5.可能是/usr/local/mysql/data/mysql.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!

13.创建root用户对外链接:
mysql> create user root@‘%’;
mysql> alter user root@‘%’ identified with mysql_native_password by ‘Datasw@2023’;
mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION;
mysql> flush privileges;
mysql> quit;

  1. 设置开机自启:
    复制操作:如已操作不需要在设置以下的复制命令了*****
    cp /usr/local/mysql/support-files/support-files/mysql.server /etc/init.d/mysql

    复制后赋予权限:chmod +x /etc/init.d/mysql

    添加到服务列表:chkconfig --add mysql

    查看服务列表:chkconfig --list
    设置开机自启: chkconfig --level 345 mysql on

    最后重启服务器即可。使用reboot命令进行了执行。

15.关机命令
常用的命令:

halt 立即关机,poweroff 立即关机, shutdow -h now 立即关机(root用户使用)  

shutdown -h 10 10分钟后自动关机.
shutdown命令:

shutdown命令安全的将系统进行关机,有些用户会使用直接断电的方式来关闭Linux,这是十分危险的.因为linux在其后台运行着许多的进程,所以强制关机可能会导致进程数据额定丢失,使得系统处于不稳定的状态,甚至在有的系统中会损坏设备,而在关机前使用shutdown命令,系统管理员,会通知所有登录的用户系统将关闭,并且login指令会被冻结﹐即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的﹐还可能重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕

shutdown执行它的工作是送信号〔signal〕给init程序﹐要求它改变runlevel。
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
1. 下载MySQL安装包 从MySQL官网下载适合您系统的MySQL安装包,选择合适的版本和平台,例如:MySQL Community Server 5.7.30 Linux-Generic (x86, 64-bit), 并将其保存到本地。 2. 安装依赖包 在安装MySQL之前需要先安装一些依赖包,以Debian/Ubuntu系统为例: ``` sudo apt-get update sudo apt-get install libaio1 libnuma1 ``` 3. 解压MySQL安装包 使用以下命令解压MySQL安装包: ``` tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz ``` 4. 创建MySQL用户和组 使用以下命令创建MySQL用户和组: ``` groupadd mysql useradd -r -g mysql -s /bin/false mysql ``` 5. 移动MySQL文件 将解压的MySQL文件夹移动到/opt目录下: ``` sudo mv mysql-5.7.30-linux-glibc2.12-x86_64 /opt/mysql ``` 6. 配置MySQL 在/opt/mysql目录下创建my.cnf文件: ``` sudo vi /opt/mysql/my.cnf ``` 文件内容如下: ``` [mysqld] # 设置MySQL数据存储路径 datadir=/data/mysql/data # 设置MySQL日志存储路径 log-bin=/data/mysql/binlog/mysql-bin # 设置MySQL错误日志存储路径 log-error=/data/mysql/error/mysql.err # 设置MySQL socket文件存储路径 socket=/var/lib/mysql/mysql.sock # 设置MySQL字符集 character-set-server=utf8 # 设置MySQL端口 port=3306 # 设置MySQL最大连接数 max_connections=500 ``` 7. 创建MySQL数据存储目录 使用以下命令创建MySQL数据存储目录: ``` sudo mkdir -p /data/mysql/data sudo chown -R mysql:mysql /data/mysql ``` 8. 初始化MySQL 使用以下命令初始化MySQL: ``` cd /opt/mysql sudo ./bin/mysqld --defaults-file=/opt/mysql/my.cnf --initialize-insecure --user=mysql --basedir=/opt/mysql --datadir=/data/mysql/data ``` 9. 启动MySQL 使用以下命令启动MySQL: ``` sudo /opt/mysql/support-files/mysql.server start ``` 10. 登录MySQL 使用以下命令登录MySQL: ``` /opt/mysql/bin/mysql -u root -p ``` 11. 修改MySQL root密码 使用以下命令修改MySQL root密码: ``` mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; ``` 12. 安装完成 至此,MySQL线安装完成。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值