目录
一.YUM方式安装MySQL
(一)下载软件包
1.
2.
3.
4.
5.
6.
把这个包安装到你的机器上就相当于你的机器有MySQL官网的源(仓库)
(二) 具体操作
安装之后,会自动生成三个MySQL的仓库,也就是MySQL的下载地址(MySQL源)
安装
yum install -y mysql-community* #安装即可
(三)登录数据库
[root@localhost ~]# systemctl start mysqld #启动数据库
[root@localhost ~]# systemctl enable mysqld #开机自启
[root@localhost ~]# grep password /var/log/mysqld.log #查找数据库初始密码
2023-10-06T03:48:19.070643Z 1 [Note] A temporary password is generated for root@localhost: f+H,wiY?184g
[root@localhost ~]# mysqladmin -uroot -p'f+H,wiY?184g' password 'QianFeng@123' #修改密码
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@localhost ~]# mysql -uroot -p'QianFeng@123' #登录数据库
二.编译安装MySQL
(一)编译前的依赖安装
###安装命令
yum -y install ncurses-devel libaio-devel gcc make cmake
###创建MySQL用户,用于授权目录
useradd -s /sbin/nologin -M mysql #-M是不创建用户家目录
(二)获取源代码
###下载源码包
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.49.tar.gz
(三)解压缩
#解压
[root@mysql-server ~]# tar xvf mysql-5.6.49.tar.gz
[root@mysql-server ~]# cd mysql-5.6.49
(四)编译安装
[root@mysql-5.6.49 ~]# cmake . \
-DWITH_BOOST=boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
参数详解:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装目录
-DSYSCONFDIR=/etc \ 配置文件存放 (默认可以不安装配置文件)
-DMYSQL_DATADIR=/usr/local/data \ 数据目录 错误日志文件也会在这个目录
-DINSTALL_MANDIR=/usr/share/man \ 帮助文档
-DMYSQL_TCP_PORT=3306 \ 默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候用
-DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调
-DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的
-DDEFAULT_COLLATION=utf8_general_ci \ 支持的
-DWITH_READLINE=1 \ 上下翻历史命令
-DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢
-DWITH_EMBEDDED_SERVER=1 \ 嵌入式数据库
-DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。
-DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键
[root@mysql-server mysql-5.6.49]# make && make install
(五)初始化
[root@mysql-server mysql-5.7.27]# cd /usr/local/mysql #安装位置
[root@mysql-server mysql-5.7.27]# mkdir mysql-files
[root@mysql-server mysql]# chown -R mysql.mysql /usr/local/mysql
#初始化完成之后,一定要记住提示最后的密码用于登陆或者修改密码 VXEdjm&>l0y=
'初始化,只需要初始化一次'
[root@mysql-server mysql]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
#加密
[root@mysql-server mysql]# /usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
#备份原来的配置文件,或者如下步操作
[root@localhost mysql]# mv /etc/my.cnf ~
[root@mysql-server ~]# vim /etc/my.cnf ---如果打开文件有内容将文件中所有内容注释掉,在添加如下内容
[mysqld]
basedir=/usr/local/mysql #指定安装目录
datadir=/usr/local/data #指定数据存放目录
(六)设置systemctl启动并修改密码
[root@mysql-server ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#添加mysql服务
[root@mysql-server ~]# chkconfig --add mysqld
#设置开机自启
[root@mysql-server ~]# systemctl enable mysqld
#或者这样也可以
[root@mysql-server ~]# chkconfig mysqld on
#启动mysql
[root@mysql-server ~]# service mysqld start