centos和ubuntu安装mysql教程

发布于:2025-02-27 ⋅ 阅读:(12) ⋅ 点赞:(0)

1,安装包准备
cd /usr/local/
mkdir mysql
cd mysql
将压缩包复制进mysql文件夹下
tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql8
cd /usr/local/mysql
mkdir data


2,创建用户组以及用户密码(如果提示已存在则说明之前已创建过)
groupadd mysql
useradd -g mysql mysql
授权刚刚新建的用户
chown -R mysql.mysql /usr/local/mysql
chmod 750 /usr/local/mysql/data -R


3,配置环境,编辑/etc/profile文件
vim /etc/profile
export PATH=$PATH:/usr/local/mysql/mysql8/bin:/usr/local/mysql/mysql8/lib
重新加载环境
source /etc/profile

4,编辑/etc/my.cnf文件(注意centos默认是my.cnf,而ubuntu可以自己新建,初始化时指定配置文件)
[mysql]
default-character-set=utf8mb4
[client]
port=3306
socket=/var/lib/mysql/mysql.sock

[mysqld]
port=3306
server-id=3306
user=mysql
general_log = 1
general_log_file= /var/log/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql/mysql8
datadir=/usr/local/mysql/data
log-bin=/usr/local/mysql/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql/data
innodb_log_group_home_dir=/usr/local/mysql/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
explicit_defaults_for_timestamp=OFF
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid


5,切换到/usr/local/mysql/mysql8/bin目录下,初始化基础信息,得到数据库的初始密码,在/usr/local/mysql/mysql8/bin目录下执行
cd bin 
执行查看mysql版本的命令
mysql --version
如果有报错则执行
sudo apt-get install libtinfo5
执行初始化命令
./mysqld --defaults-file=/etc/my.cnf --user=mysql --basedir=/usr/local/mysql/mysql8 --datadir=/usr/local/mysql/data/ --initialize
复制初始密码,保存到本地,后面需要用到6ELf0peXSY!X


6,复制mysql.server文件,在/usr/local/mysql/mysql-8.0目录下执行
cp ./support-files/mysql.server /etc/init.d/mysql
cp ./support-files/mysql.server /etc/init.d/mysqld


7,赋予权限
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysql
chmod +x /etc/init.d/mysqld

8,检查一下/var/lib/mysql是否存在,不存在则创建
mkdir /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql/


9,启动数据库,有success则说明安装成功
service mysql start
提示:
如果发现启动失败,可以先查看data里面的mysql.log,如果有提示3306这样的字样,第一个想到的应该是端口被占用,
使用lsof -i:端口号,查看是哪个PID(进程号)占用了该端口,然后使用kill PID(进程号)杀掉进程,重新执行service mysql start
登录mysql:
mysql -u root -p
使用刚才密码登录

10,修改密码,并设置远程连接
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
设置密码不过期
alter user 'root'@'localhost' password expire never;
执行
flush privileges;
开启远程访问
use mysql;
update user set host = '%' where user = 'root';
flush privileges;

创建新的数据库
CREATE DATABASE apm;

参考链接:
https://blog.csdn.net/qq_19309473/article/details/144164146?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522ce346253aa950d2ef03bc88341a11ac8%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=ce346253aa950d2ef03bc88341a11ac8&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-144164146-null-null.142^v101^pc_search_result_base3&utm_term=%E4%BD%BF%E7%94%A8%E5%8E%8B%E7%BC%A9%E5%8C%85%E8%BF%9B%E8%A1%8Cmysql8%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8Bcentos&spm=1018.2226.3001.4187
https://blog.csdn.net/Helen_1997_1997/article/details/128125256?ops_request_misc=&request_id=&biz_id=102&utm_term=%E4%BD%BF%E7%94%A8%E5%8E%8B%E7%BC%A9%E5%8C%85%E8%BF%9B%E8%A1%8Cmysql8%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8Bcentos&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-128125256.142^v101^pc_search_result_base3&spm=1018.2226.3001.4187
https://so.csdn.net/so/search?spm=1001.2101.3001.4498&q=%E4%BD%BF%E7%94%A8%E5%8E%8B%E7%BC%A9%E5%8C%85%E8%BF%9B%E8%A1%8Cmysql8%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8Bcentos&t=&u=&urw=