linux 用rpm安装完成mysql后怎么进行初始化

linux 用rpm安装完成mysql后怎么进行初始化,第1张

如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf中不存在启动不了的情况啊,如有启动不了,仔细查看你的my.cnf文件,是不是哪里配置需要修改,然后查看一下mysql启动脚本/etc/rc.d/init.d/mysql。最重要的结合你mysql的错误日志去分析。

设置默认utf-8

在文件my.cnf中加上如下配置:

[mysqld]

init_connect = 'SET NAMESutf8'

character-set-server = utf8

collation-server =utf8_general_ci

针对第三点:

在创建数据库完成后,最好查看下你数据库的字符集是什么?用show create database test命令可以看到。必须保证你数据库的编码格式是utf-8的,这样才可以保证插入到数据库中的是中文格式的

关于安装,我在这块回答过。

https://zhidao.baidu.com/question/1579396496783432340

关于配置并让mysql服务跑起来,以下我用mysql5.7.19二进制包在centeros的安装过程,请参考,有问题参考手册最有用。mysql5.7.19不再创建配置文件。惯例是5/etc/my.cnf。自己创建一个。

1、安装,二进制包,目录用户与组修改成mysql

2、初始化数据库

mysqld --initialize --user=mysql

此处产生mysql root的初始密码,必须记录

mysql_ssl_rsa_setup:安装安全连接,大概是安全套接字连接:SSL

3、默认不在有启动配置文件,在/etc/my.cnf,添加一个。

4、启动mysql:

mysqld_safe --user=mysql &

5、第一次启动修改root密码

step 1: SET PASSWORD = PASSWORD('your new password')

step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER

step 3: flush privileges

6、停止mysql:

Script

Option Groups

mysqld[mysqld], [server], [mysqld-major_version]

mysqld_safe[mysqld], [server], [mysqld_safe]

mysql.server[mysqld], [mysql.server], [server]

上面三个程序都可以启动mysql,mysqld,mysqld_safe 不知道怎么停止,程序位于mysql/bin目录下

mysql.server是脚本,跟service 一样, 位于:support-files目录下。

mysql.server start

mysql.server stop

在Linux安装软件需要预先做好如下一些准备:准备好Linux *** 作系统如:CentOS7。配置好yum源。

完成上述准备后,就可以动手安装MySQL数据库了。主要安装步骤如下:

1. 禁用selinux

setenforce 0

2. 上传安装文件到Linux

3.解压rpm包

tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

4.安装软件

yum install mysql-community-{libs,client,common,server}-*.rpm

5.启动mysql数据库初始化

systemctl start mysqld

6.修改vi /etc/my.cnf

添加:

[mysqld]

#可以在表中录入中文

character-set-server=utf8 #

explicit-defaults-for-timestamp

# 禁用当前密码认证策略,可以使用简单密码(生产环境不适用)

validate_password=0

7.重启mysql服务

systemctl restart mysqld

8.找临时登录密码

grep -i "temporary password" /var/log/mysqld.log

9.连接MySQL数据库

mysql -uroot -p 输入临时密码

10.修改root用户登录密码为简单密码(生产环境不适用)

alter user root@localhost identified by ''

11.配置MYSQL_PS1环境变量

修改家目录下:.bash_profile文件,添加

export MYSQL_PS1="\u@\h[\d]>"

12.使新环境变量生效

source /root/.bash_profile

13.重新连接mysql验证

mysql -uroot -p

除了上述安装方式以外,可能在公司中会遇到安装指定版本的需求,那么如何安装指定版本的MySQL数据呢?这时我们可以采用下载指定版本安装包进行安装的方式,主要步骤如下,假设CentOS7 linux最小安装,已经配置好yum。首先检查是否安装numactl包

rpm -qa|grep numactl

yum install numactl-libs-* # 如果没有安装需要安装。检查是否安装libaio包

rpm -qa|grep libaio

yum install libaio-* # 如果没有安装需要安装

具体安装步骤如下:

* 禁用selinux

setenforce 0

* 上传安装文件到Linux

mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

* 创建mysql用户组和用户

groupadd -g 27 -r mysql

#-r创建系统账户,-M 不创建用户家目录 -N 不创建和用户名一样的用户组

useradd -M -N -g mysql -r -s /bin/false -c "MySQL Server" -u 27 mysql

id mysql

* 上传安装包到root家目录

* 解压二进制文件到/usr/local

tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local

* 解压目录改名为mysql

cd /usr/local

ls -l

mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql

* 环境变量中添加mysql/bin目录

vi /root/.bash_profile

修改PATH=/usr/local/mysql/bin:$PATH:$HOME/bin

添加 export MYSQL_PS1="\u@\h[\d]>"

source /root/.bash_profile

* 创建/usr/local/mysql/etc/my.cnf选项文件 (也可以使用默认的/etc/my.cnf选项文件)

mkdir -p /usr/local/mysql/etc

mkdir -p /usr/local/mysql/mysql-files

* 编辑选项文件my.cnf填写默认选项

vi /usr/local/mysql/etc/my.cnf

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/data/mysql.sock

log-error=/usr/local/mysql/data/mysqld.err

pid-file=/usr/local/mysql/data/mysqld.pid

secure_file_priv=/usr/local/mysql/mysql-files

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

Explicit-defaults-for-timestamp

character-set-server=utf8

[mysql]

socket=/usr/local/mysql/data/mysql.sock

* 初始化数据目录

cd /usr/local/mysql

mkdir data

chmod 750 data

chown mysql:mysql data

* 初始化数据库

cd /usr/local/mysql

bin/mysqld --defaults-file=/usr/local/mysql/etc/my.cnf --initialize

* 使用systemd管理mysql

例如:systemctl {start|stop|restart|status} mysqld

cd /usr/lib/systemd/system

touch mysqld.service

chmod 644 mysqld.service

vi mysqld.service

# 添加以下内容

[Unit]

Description=MySQL Server

Documentation=man:mysqld(7)

Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

[Install]

WantedBy=multi-user.target

[Service]

User=mysql

Group=mysql

Type=forking

PIDFile=/usr/local/mysql/data/mysqld.pid

# Disable service start and stop timeout logic of systemd for mysqld service.

TimeoutSec=0

# Start main service

ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my.cnf --daemonize --pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS

# Use this to switch malloc implementation

EnvironmentFile=-/etc/sysconfig/mysql

# Sets open_files_limit

LimitNOFILE = 65535

Restart=on-failure

RestartPreventExitStatus=1

PrivateTmp=false

以上内容中注意:The --pid-file option specified in the my.cnf configuration file is ignored by systemd.

默认:LimitNOFILE = 5000,如果连接数(max_connection)需要调大,可以将LimitNOFILE 设置为最大65535

* 创建mysql.conf文件

cd /usr/lib/tmpfiles.d

#Add a configuration file for the systemd tmpfiles feature. The file is named mysql.conf and is placed in /usr/lib/tmpfiles.d.

cd /usr/lib/tmpfiles.d

touch mysql.conf

chmod 644 mysql.conf

* mysql.conf添加内容

vi mysql.conf

添加以下语句:

d /usr/local/mysql/data 0750 mysql mysql -

* 使新添加的mysqld服务开机启动

systemctl enable mysqld.service

* 手动启动mysqld

systemctl start mysqld

systemctl status mysqld

* 获得mysql临时登录密码

cat /usr/local/mysql/data/mysqld.err | grep "temporary password"

* 客户端登录连接mysql服务器

mysql -uroot -p

输入临时密码

* 修改MySQL用户root@localhost密码

mysql>alter user root@localhost identified by ''#此处为了方便设置为空密码

* 测试新密码连接MySQL服务

mysql -uroot -p

至此,我们就完成了在Linux环境下安装MySQL的任务。通过这两种方式我们可以体会到在Linux环境下安装软件的基本思路及方法。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9020387.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存