mysql的管理 (实战,可跟做)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql的管理 (实战,可跟做)相关的知识,希望对你有一定的参考价值。
手工编译安装mysql
1.用samba服务从宿主机上获取安装包
[root@localhost ~]# mount.cifs //192.168.10.28/share /mnt
Password for root@//192.168.10.28/share:
[root@localhost ~]# cd /mnt/LNMP/
[root@localhost LNMP]# ls
Discuz_X3.4_SC_UTF8.zip mysql-boost-5.7.20.tar.gz nginx-1.12.2.tar.gz php-7.1.10.tar.bz2 php-7.1.20.tar.gz
[root@localhost LNMP]# tar zxvf mysql-boost-5.7.20.tar.gz -C /opt
2.安装mysql所需环境包组件
[root@localhost LNMP]# yum install -y
gcc gcc-c++ ncurses ncurses-devel bison cmake
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates
3.创建数据库管理员
useradd -s /sbin/nologin mysql
4.解压数据库安装包
cd /mnt/LNMP
tar zxvf mysql-boost-5.7.20.tar.gz -C /opt
5.进行configure配置
cd /opt/mysql-5.7.20/
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DSYSCONFDIR=/etc -DSYSTEMD_PID_DIR=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost -DWITH_SYSTEMD=1
6.编译及编译安装
make && make install
7.数据库目录权限调整
chown -R mysql:mysql /usr/local/mysql/
8.修改数据库配置文件
vim /etc/my.cnf
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysql.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1
#支持的模块
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
9.更改配置文件的属主属组
[root@localhost mysql-5.7.20]# chown mysql:mysql /etc/my.cnf
10.设置环境变量
[root@localhost mysql-5.7.20]# echo ‘PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH‘ >> /etc/profile
[root@localhost mysql-5.7.20]# echo ‘export PATH‘ >> /etc/profile
[root@localhost mysql-5.7.20]# source /etc/profile
11.初始化数据库
[root@localhost mysql-5.7.20]# cd /usr/local/mysql/
[root@localhost mysql]# bin/mysqld > --initialize-insecure > --user=mysql > --basedir=/usr/local/mysql > --datadir=/usr/local/mysql/data
12.让系统识别mysql的命令
cp usr/lib/systemd/system/mysqld.service /lib/systemd/system/
13.开启服务
systemctl start mysqld.service
14.设置mysql密码
[root@localhost mysql]# mysqladmin -u root -p password "abc123"
Enter password:
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]# mysql -uroot -p
Enter password:
mysql> grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘abc123‘;
Query OK, 0 rows affected, 1 warning (0.00 sec)
15.创建数据库
mysql> create database IT;
Query OK, 1 row affected (0.01 sec)
16.查看数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| IT |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
17.使用数据库
mysql> use IT;
Database changed
18.创建表
mysql> create table it (
-> 岗位类别 varchar(10) not null,
-> 姓名 varchar(5) not null,
-> 年龄 int(3) default 30,
-> 员工ID int(3) not null,
-> 学历 varchar(5) ,
-> 年限 int(2) ,
-> 薪资 int(5) not null,
-> primary key (员工ID));
Query OK, 0 rows affected (0.02 sec)
19.查看创建的表
mysql> show tables;
| Tables_in_IT |
+--------------+
| it |
+--------------+
1 row in set (0.00 sec)
mysql> select * from it;
Empty set (0.02 sec)
20.查看表的属性
mysql> describe it;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| 岗位类别 | varchar(10) | NO | | NULL | |
| 姓名 | varchar(5) | NO | | NULL | |
| 年龄 | int(3) | YES | | NULL | |
| 员工ID | int(3) | NO | PRI | NULL | |
| 学历 | varchar(5) | YES | | NULL | |
| 年限 | int(2) | YES | | NULL | |
| 薪资 | int(5) | NO | | NULL | |
+--------------+-------------+------+-----+---------+-------+
7 rows in set (0.02 sec)
21.向表中添加数据
mysql> insert into it value (‘网络工程师‘,‘孙空无‘,27,011,‘本科‘,3,4800);
Query OK, 1 row affected (0.00 sec)
mysql> select * from it;
+-----------------+-----------+--------+----------+--------+--------+--------+
| 岗位类别 | 姓名 | 年龄 | 员工ID | 学历 | 年限 | 薪资 |
+-----------------+-----------+--------+----------+--------+--------+--------+
| 网络工程师 | 孙空无 | 27 | 11 | 本科 | 3 | 4800 |
+-----------------+-----------+--------+----------+--------+--------+--------+
1 row in set (0.00 sec)
mysql> insert into it value (‘windows工程师‘,‘周万石朋鸟‘,18,012,‘幼本‘,0,666);
Query OK, 1 row affected (0.01 sec)
mysql> select * from it;
+------------------+-----------------+--------+----------+--------+--------+--------+
| 岗位类别 | 姓名 | 年龄 | 员工ID | 学历 | 年限 | 薪资 |
+------------------+-----------------+--------+----------+--------+--------+--------+
| 网络工程师 | 孙空无 | 27 | 11 | 本科 | 3 | 4800 |
| windows工程师 | 周万石朋鸟 | 18 | 12 | 幼本 | 0 | 666 |
+------------------+-----------------+--------+----------+--------+--------+--------+
2 rows in set (0.00 sec)
mysql> insert into it value (‘水晶头工程师‘,‘媛媛‘,35,013,‘小学‘,-1,-10000);
Query OK, 1 row affected (0.01 sec)
mysql> insert into it value (‘公司厕所管理员‘,‘陈文强‘,55,014,‘初中‘,5,1500);
Query OK, 1 row affected (0.00 sec)
mysql> insert into it value (‘公司女性管理工程师‘,‘涛涛‘,20,015,‘高中‘,10,11500);
Query OK, 1 row affected (0.01 sec)
mysql> insert into it value (‘公司歌唱家兼播音编程‘,‘徐勇‘,20,016,‘博士后‘,20,111500);
Query OK, 1 row affected (0.01 sec)
mysql> insert into it value (‘台球编程员‘,‘泽鹏‘,18,017,‘大专‘,2,8000);
Query OK, 1 row affected (0.00 sec)
mysql> select * from it;
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 岗位类别 | 姓名 | 年龄 | 员工ID | 学历 | 年限 | 薪资 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 网络工程师 | 孙空无 | 27 | 11 | 本科 | 3 | 4800 |
| windows工程师 | 周万石朋鸟 | 18 | 12 | 幼本 | 0 | 666 |
| 水晶头工程师 | 媛媛 | 35 | 13 | 小学 | -1 | -10000 |
| 公司厕所管理员 | 陈文强 | 55 | 14 | 初中 | 5 | 1500 |
| 公司女性管理工程师 | 涛涛 | 20 | 15 | 高中 | 10 | 11500 |
| 公司歌唱家兼播音编程 | 徐勇 | 20 | 16 | 博士后 | 20 | 111500 |
| 台球编程员 | 泽鹏 | 18 | 17 | 大专 | 2 | 8000 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
7 rows in set (0.00 sec)
mysql> mysql> select * from it;
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 岗位类别 | 姓名 | 年龄 | 员工ID | 学历 | 年限 | 薪资 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 网络工程师 | 孙空无 | 27 | 11 | 本科 | 3 | 4800 |
| windows工程师 | 周万石朋鸟 | 18 | 12 | 幼本 | 0 | 666 |
| 水晶头工程师 | 媛媛 | 35 | 13 | 小学 | -1 | -10000 |
| 公司厕所管理员 | 陈文强 | 55 | 14 | 初中 | 5 | 1500 |
| 公司女性管理工程师 | 涛涛 | 20 | 15 | 高中 | 10 | 11500 |
| 公司歌唱家兼播音编程 | 徐勇 | 20 | 16 | 博士后 | 20 | 111500 |
| 台球编程员 | 泽鹏 | 18 | 17 | 大专 | 2 | 8000 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
7 rows in set (0.00 sec)
mysql> update it set 岗位类别=‘linux工程师‘ where 员工ID=12;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select * from it;
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 岗位类别 | 姓名 | 年龄 | 员工ID | 学历 | 年限 | 薪资 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
| 网络工程师 | 孙空无 | 27 | 11 | 本科 | 3 | 4800 |
| linux工程师 | 周万石朋鸟 | 18 | 12 | 幼本 | 0 | 666 |
| 水晶头工程师 | 媛媛 | 35 | 13 | 小学 | -1 | -10000 |
| 公司厕所管理员 | 陈文强 | 55 | 14 | 初中 | 5 | 1500 |
| 公司女性管理工程师 | 涛涛 | 20 | 15 | 高中 | 10 | 11500 |
| 公司歌唱家兼播音编程 | 徐勇 | 20 | 16 | 博士后 | 20 | 111500 |
| 台球编程员 | 泽鹏 | 18 | 17 | 大专 | 2 | 8000 |
+--------------------------------+-----------------+--------+----------+-----------+--------+--------+
7 rows in set (0.00 sec)
mysql> quit
Bye
22.最终效果图
以上是关于mysql的管理 (实战,可跟做)的主要内容,如果未能解决你的问题,请参考以下文章