- 1、详细讲解Linux环境下MySQL 5.1安装步骤
- 2、如何安装mysql,Linux下mysql安装
- 3、《从0到1 最详细MySQL安装流程(Linux环境)
- 4、linux怎么安装mysql数据库
1、下载MySQL免安装版/二进制版软件
(不用编译)
文件格式:MYSQL-VERSION-OS.tar.gz
2、创建MySQL组,建立MySQL用户并加入到mysql组中
(不同版本的Unix中,groupadd和useradd的语法可能会稍有不同。)
#groupadd
mysql
#useradd
-g
mysql
mysql
3、进入目录/usr/local,解压缩免安装版,并在此目录中建立名为mysql的软链接
#cd
/usr/local
#gunzip
/path/to/MYSQL-VERSION-OS.tar.gz
|
tar
xvf
–
(该命令会在本目录下创建一个名为MYSQL-VERSION-OS的新目录。)
(使用GNU
tar,则不再需要gunzip。你可以直接用下面的命令来解包和提取分发:
#
tar
zxvf
/path/to/mysql-VERSION-OS.tar.gz)
#ln
-s
MYSQL-VERSION-OS
mysql
4、添加MySQL配置文件
如果你想要设置一个选项文件,使用support-files目录中的一个作为模板。在这个目录中有4个模板文件,是根据不同机器的内存定制的。
#cp
support-files/my-medium.cnf
/etc/my.cnf
(可能你需要用root用户运行这些命令。)
5、设定目录访问权限,用mysql_install_db创建MySQL授权表初始化,并设置mysql,root帐号访问权限
#cd
mysql
#chown
-R
mysql
.
#chgrp
-R
mysql
.
#scripts/mysql_install_db
–user=mysql
#chown
-R
root
.
#chown
-R
mysql
data
(注意以上命令中的”
.
“符号不能少。)
6、运行MySQL
#bin/mysqld_safe
–user=mysql
(如果没有问题的话,应该会出现类似这样的提示:
[1]
42264
#
Starting
mysqld
daemon
with
databases
from
/usr/local/mysql/var
如果出现
mysql
ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置。
大多数问题是权限设置不正确引起的。
)
7、设置root密码。默认安装密码为空,为了安全你需要修改密码
#/usr/local/mysql/bin/mysqladmin
-uroot
password
yourpassword
8、拷贝编译目录的一个脚本,设置开机自动启动
#cp
support-files/mysql.server
/etc/rc.d/init.d/mysqld
#chmod
700
/etc/init.d/mysqld
#chkconfig
–add
mysqld
#chkconfig
–level
345
mysqld
on
9、启动mysqld服务
#service
mysqld
start
10、查看3306端口是否打开。要注意在防火墙中开放该端口
#netstat
-atln
免安装版/二进制版安装基本命令概述:
shell
groupadd
mysql
shell
useradd
-g
mysql
mysql
shell
cd
/usr/local
shell
gunzip
/PATH/TO/MYSQL-VERSION-OS.tar.gz
|
tar
xvf
–
shell
ln
-s
FULL-PATH-TO-MYSQL-VERSION-OS
mysql
shell
cd
mysql
shell
chown
-R
mysql
.
shell
chgrp
-R
mysql
.
shell
scripts/mysql_install_db
–user=mysql
shell
chown
-R
root
.
shell
chown
-R
mysql
data
shell
bin/mysqld_safe
–user=mysql
一、下载编译安装
#cd /usr/local/src/
#wget
#tar –xzvf
mysql-5.1.38.tar.gz ../software/
#./configure
–prefix=/usr/local/mysql
//MySQL安装目录
–datadir=/mydata //数据库存放目录
–with-charset=utf8 //使用UTF8格式
–with-extra-charsets=complex //安装所有的扩展字符集
–enable-thread-safe-client
//启用客户端安全线程
–with-big-tables //启用大表
–with-ssl //使用SSL加密
–with-embedded-server //编译成embedded MySQL library (libmysqld.a),
–enable-local-infile //允许从本地导入数据
–enable-assembler
//汇编x86的普通操作符,可以提高性能
–with-plugins=innobase //数据库插件
–with-plugins=partition //分表功能,将一个大表分割成多个小表
#make make
install //编译然后安装
二、新建用户和组
#groupadd mysql //建MySQL组
#useradd -g mysql -s /sbin/nologin mysql //建MySQL用户属于MySQL组
三、配置
#chown -R mysql:mysql /usr/local/mysql/ 把MySQL目录的权限给MySQL用户和组
#cp /usr/local/src/software/ mysql-5.1.38/support-files/my-medium.cnf
/etc/my.cnf //拷入配置文件my.cnf
#/usr/local/mysql/bin/mysql_install_db
–user=mysql //用MySQL来初始化数据库
#chown -R mysql:mysql /usr/local/mysql/var/
//把初始化的数据库目录给MySQL所有者
#/usr/local/mysql/bin/mysqld_safe –user=mysql
//启动MySQL
四、其他
#cp /usr/local/src/software/
mysql-5.1.38/support-files/mysql.server /etc/init.d/mysqld
#chmod 755
/etc/init.d/mysqld
#chkconfig –add mysqld
#chkconfig mysqld on
#service mysqld restart
五、登陆测试
#cd
/usr/local/mysql/bin
#mysql
show databases;
#
MySQL安装结束
linux下mysql配置方法
在linux中mysql的配置文件路径在/usr/share/mysql下
有:my-huge.cnf 、my-large.cnf、 my-medium、my-small.cnf这些文件
根据需要打开这些文件中的一个:
在文件中找到[mysqld]
在下这行下加入datadir=FILEPATH /*这个路径为数据库存放的路径*/
然后保存文件
在shell中输入
#cp my-***.cnf /etc
#cd /etc
#mv my.cnf my.cnf.bak
/*把系统以前的mysql配置文件备份*/
#mv my-***.cnf my.cnf
#service mysqld start
/*启动mysql服务*/
#ntsysv /*配置mysql自启动,在弹出的窗口中把mysqld这项服务用空格选中,最后确定保存*/
查看服务器是否有自带的MySQL,如果有可以直接使用,如果自带的版本比较低,可以删除然后安装自己想要的版本 (在安装新版本MySQL之前,需要卸载服务器自带的MySQL包和MySQL数据库分支mariadb的包)
1、rpm -qa|grep mysql — 查询服务器是否有mysql,如有,则执行下面的语句进行删除
2、rpm -qa |grep mariadb — 查询服务器是否有mariadb,有则执行第三步进行删除
3、rpm -e –nodeps 要删除的文件名( nodeps表示强制删除 )
小贴士1: 如果使用rz命令时提示找不到命令,直接执行: yum -y install lrzsz 则可以在线下载。
命令: rz 或者rz -be
格式: rz -be 选择需要上传的文件
批量或者单个上传文件,通过ZMODEM协议,除此之外,还可以通过ftp或者sftp进行上传
按照下面的命令顺序执行,文件名修改成你压缩后的文件名称即可
启动命令: systemctl start mysql
报错信息: Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details.
根据报错信息执行 : systemctl status mysqld.service” 或者 “journalctl -xe”命令查看报错详情,发现报错信息中存在: Data Dictionary upgrade from MySQL 5.7 in progress 。
说明是因为新版本和之前服务器自带的版本对应的包存在冲突,删除对应的冲突目录即可,执行: rm -rf /var/lib/mysql/*(执行删除命令的时候要看清楚哦)
systemctl start mysql — 启动服务器
第一次成功启动MySQL会被设置默认一个密码,通过以下命令查看并进行登录。
1、查看第一次启动的临时密码 :grep password /var/log/mysqld.log
2、连接到服务器 : mysql -u root -p 回车,然后输出密码
3、第一次连接会强制你必须修改连接密码 ,可以使用以下的语句进行修改密码:
ALTER USER root@localhost IDENTIFIED WITH caching_sha2_password BY ‘123456’; (MySQL8.x适合使用这个语句)
UPDATE USER SET PASSWORD=PASSWORD(‘你的密码’) WHERE USER=’root’; (MySQL5.x版本的修改)
1. 安装MySQL数据库
先从MySQL官网下载MySQL,然后进入所下载的安装文件所在目录,运行如下命令进行安装,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm为刚刚下载的MySQL数据库服务器的rpm包,然后使用/etc/rc.d/init.d/mysqlrestart命令重启MySQL服务:
[root@localhost ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386.rpm
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[确定]
Starting MySQL..[确定]
2. 配置MySQL数据库字符集
备注:配置MySQL数据库字符集的目的是方便的使用数据库,无需在每次连接的时候都要临时设置数据库字符集的,个人不建议采用这种方法,真正的工程项目都应该在连接数据库时临时设置数据库字符集,如此才便于系统的移植,而且又不会影响数据库服务器中的其他数据库的使用!
安装完成之后,需要配置MySQL的字符集配置,首先需要查找MySQL的配置文件的位置,由于MySQL的配置文件名是以.cnf结尾的,因此可用如下命令进行查找:
[root@localhost ~]# find / -iname ‘*.cnf’ -print
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-huge.cnf
/usr/share/mysql/my-small.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-large.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-medium.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-innodb-heavy-4G.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-huge.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-small.cnf
/etc/pki/tls/openssl.cnf
输入完命令“find / -iname ‘*.cnf’-print”回车后,屏幕便显示搜索到的MySQL配置文件,然后拷贝my-large.cnf、my-medium.cnf 、my-innodb-heavy-4G.cnf 、my-huge.cnf、my-small.cnf中任意的一个到/etc目录下,并命名为my.cnf,其命令如下所示:
[root@localhost ~]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
[root@localhost ~]# vi /etc/my.cnf
然后,使用vi编辑器修改/etc/my.cnf文件,在[client]下添加: “default-character-set=gb2312”;在[mysqld]下添加:“default-character-set=gb2312”。如下所示:
# The following options will be passed to all MySQL clients
[client]
default-character-set=gb2312
#password = your_password
port = 3306
socket = /var/lib/mysql/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
default-character-set=gb2312
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
按一下Esc键,输入“:wq”后回车保存配置文件,输入“/etc/rc.d/init.d/mysqlrestart”重启MySQL服务,如下所示:
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[确定]
Starting MySQL..[确定]
最后,我们来验证MySQL服务器配置是否成功,首先登录MySQL,输入“mysql –uroot -p”回车,系统提示输入密码,登录成功后进入MySQL命令模式,如下所示:
[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.56-community-log MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql
在MySQL命令模式下分别输入“show variables like’collation_%’;”、“show variables like ‘character_set_%’;”回车后显示字符集设置,如下所示:
mysql show variables like ‘collation_%’;
+———————-+——————-+
| Variable_name | Value |
+———————-+——————-+
| collation_connection | gb2312_chinese_ci |
| collation_database | gb2312_chinese_ci |
| collation_server | gb2312_chinese_ci |
+———————-+——————-+
3 rows in set (0.05 sec)
mysql show variables like ‘character_set_%’;
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | gb2312 |
| character_set_connection | gb2312 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | gb2312 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+————————–+—————————-+
8 rows in set (0.00 sec)
mysql
根据以上查询结果可知我们设置的MySQL数据库配置信息已经生效,至此完成MySQL的服务器的安装与配置。
3.关于MySQL数据库的一些注意事项
3.1 远程连接mysql速度慢
解决方法:
在MySQL服务器的配置(/etc/my.cnf)中增加一个如下配置后速度飞快。
[mysqld]
skip-name-resolve
备注:这样就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。
3.2 重启数据库后,发现无需密码(或者任何密码)即可以连接
解决方法:
检查你的MySQL配置文件(/etc/my.cnf)中是不是多了一条语句:“skip-grant-tables”,删除(注释)该语句,重新配置MySQL密码,再次重启MySQL服务即可!
备注:若使用skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,如果mysql服务器没有开远程帐户,就在/etc/my.cnf里面加上skip-grant-tables。
原创文章,作者:R6ILV,如若转载,请注明出处:https://www.506064.com/n/126363.html