离线安装Mysql Centos-离线安装MySql
卸载系统自带的Mariadb/MySql
-
rpm -qa|grep mariadb
输出:
mariadb-libs-5.5.44-2.el7.centos.x86_64
-
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
准备-安装包&依赖
-
下载mysql安装包
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
MySQL Community Server 5.7.25 Select Version: 5.7.25(选择) Select Operating System: Linux-Generic(选择) Select OS Version: Linux-Generic(glibc 2.12)(x86,64-bit)(选择) Compressed TAR Archive (mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz) Download(点击下载)
-
下载依赖、打包(纯净的环境,可以在docker中完成)
解释: yum install --downloadonly
(该命令只下载不安装)
yum install --downloadonly --downloaddir=/home/libaio libaio-devel.x86_64
yum install --downloadonly --downloaddir=/home/libaio numactl.x86_64
解压安装包&安装依赖
1 解压Mysql
mysql安装包到
/usr/local/
目录下
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
重命名
mv /usr/local/mysql-5.7.25-linux-glibc2.12-x86_64 /usr/local/mysql
df -h
查看磁盘使用情况,根据情况选择数据库数据存放地址创建mysql数据存储目录
mkdir /usr/local/mysql/data
2 安装依赖
tar -zxvf libaio.tar.gz
tar -zxvf numactl.tar.gz
rpm -ivh *.rpm --nodeps --force
设置/配置
1. 创建mysql用户组/用户
groupadd mysql
useradd mysql -g mysql -p 123456
cd /usr/local/;chown -R mysql:mysql mysql/
设置文件权限
文件
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] skip-name-resolve #设置3306端口 port=3306 # 设置mysql的安装目录 basedir=/usr/local/mysql # 设置mysql数据库的数据的存放目录 datadir=/usr/local/mysql/data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M
2. 初始化mysql
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
执行完毕最后一行 产生一个随机密码
gRshYu?R/5hs
3. 设置开机自启动
将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
赋予可执行权限
chmod +x /etc/init.d/mysqld
添加服务
chkconfig --add mysqld
显示服务列表
chkconfig --list
如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
chkconfig --level 345 mysqld on
验证
netstat -na | grep 3306
5. 启动mysql服务
/usr/local/mysql/support-files/mysql.server start
6. 配置环境变量
vim ~/.bashrc
export PATH=$PATH:/usr/local/mysql/bin
source ~/.bashrc
7. 登录mysql数据库
mysql -u root -p
使用随机生成的密码登录
set PASSWORD = PASSWORD('新密码');
修改密码
8. 设置可远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
例如
1. 你想root使用123456从任何主机连接到mysql服务器。
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
2. 如果你想允许用户jack从ip为10.10.10.10的主机连接到mysql服务器,并使用654321作为密码
mysql>GRANT ALL PRIVILEGES ON *.* TO 'jack'@’10.10.10.10’ IDENTIFIED BY '654321' WITH GRANT OPTION;
mysql>FLUSH RIVILEGES
9. CentOS 下 启动,停止,重启,查看mysql服务
- 启动
service mysqld start
- 停止
service mysqld stop
- 重启
service mysqld restart
- 查看
service mysqld status
DDL
创建数据库
create databases <database_name>;
创建表
SET FOREIGN_KEY_CHECKS=0; DROP TABLE IF EXISTS `table_name`; CREATE TABLE `table_name` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `time` datetime DEFAULT NULL, `memo` mediumtext, `txt` text, `weight` float DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=159423 DEFAULT CHARSET=utf8;
添加字段并设置默认值
ALTER TABLE <表名> ADD <字段> <类型(长度)> DEFAULT '1' COMMENT '说明';
修改字段类型
alter table <table_name> modify column <column_name> varchar(128);