美文网首页
Linux上安装mysql

Linux上安装mysql

作者: yahzon | 来源:发表于2019-01-06 17:44 被阅读14次

服务器没互联网。

  1. windows下载bundle; mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar
  2. 拷贝到服务器.
pscp -C G:\KuGou\mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar root@192.168.xxx.xxx:/opt/mysqlsoft
  1. 解压到安装目录:
tar xvf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar -C /opt/mysql/
  1. 是否需要卸载centos7自带的mariadb-lib
$  rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64

$  yum remove mysql-libs

5、安装net-tools

先下载 http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm
 rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

6、安装:几个包有依赖关系,所以执行有先后

[root@centos-linux ~]# rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm 
[root@centos-linux ~]# rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm
[root@centos-linux ~]# rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm 
[root@centos-linux ~]# rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

7、数据库初始化

mysqld --initialize --user=mysql

8、启动数据库

systemctl start mysqld.service
systemctl enable mysqld.service #开机自启动

systemctl restart mysqld.service
systemctl stop mysqld.service
systemctl status mysqld.service

9、查看密码,登录数据库

cat /var/log/mysqld.log 
mysql -uroot -p

mysql>  ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

10、建用户,建库,授权

create user user01  identified by 'userpassword';
create database yourdb;
grant all privileges on yourdb.* to 'user01'@'%';
flush privileges;

11、

firewall-cmd --zone=public --add-port=3306/tcp --permanent 
firewall-cmd --reload

12、 成功:


image.png

13、mysql使用的配置文件:

1. 查看mysql进程,是否使用了配置文件启动。下面命令结果中有无defaults-file=xxx

ps aux|grep mysql

2. 默认配置文件.

mysql --help|grep 'my.cnf'

3. 查看所有my.cnf ;如果默认配置文件没有结果,创建一个默认,/ect/my.cnf就行。

locate my.cnf

14、表名大小写敏感问题。
个人倾向,数据库表名全部小写,忽视大小写问题。

找到my.cnf配置文件 
在[mysqld]节点下添加lower-case-table-names=1 

15、初始导入数据。因为外键导致导入报错。

导入前
SET FOREIGN_KEY_CHECKS=0;
导入后
set FOREIGN_KEY_CHECKS=1;

16、mysql运行一段时间后,binlog日志问题:

mysql> show variables like 'expire_logs_days'; 

mysql> set global expire_logs_days =15;
mysql> flush logs;

不要轻易手动去删除binlog,会导致binlog.index和真实存在的binlog不匹配,而导致expire_logs_day失效。

相关文章

网友评论

      本文标题:Linux上安装mysql

      本文链接:https://www.haomeiwen.com/subject/giozyxtx.html