Mysqlデータベース:
mysqlサービスをデプロイします
インストール:
[root@localhost ~]# yum install -y mariadb mariadb-devel mariadb-server
サービスをオンにします。
[root@localhost ~]# systemctl restart mariadb
mysqlを初期化します:
[root@localhost ~]# mysql_secure_installation
ローカルでmysqlにログインします。
[root@localhost ~]# mysql -u root (-p密码) //如果没有设置密码可以不加-p参数
>show databases; //查看库
>create database School; //创建库
**Query OK,1 row affected (0.00 sec)
>use School //切换库
**Database changed**
>create table Score( //创建表
->ID int primary key,
->Name varchar(20),
->Birthday Datetime,
->Sex char(10),
->Password char(64)
->);
**Query OK,0 row affected (0.00 sec)
>show tables; //查看有哪些表
>insert into Score(ID,Name,Birthday,Sex,Password) //向表里添加内容
->values(‘1’,’suser1’,’1999-6-1’,’female’,’suser1’),
->(‘2’,’suser2’,’2000-9-1’,’male’,’suser2’)
->;
**Query OK, 2 rows affected (0.00 sec)
**Records: 2 Duplicates: 0 Warnings: 0**
>select * from Score order by id limit 0,2; //查询id列的前两行
>select * from Score; //查询Score表中的内容
>delete from Score where ID='1 '; //从Score中删除ID等于1的内容
>drop table Score; //删除Score表
>drop database School; //删除School库
管理データベース
ユーザーを作成:
>create user 'a'@'localhost' identified by '1234'; //创建a用户赋予密码1234
パスワードを変更する:
[root@localhost ~]# mysqladmin -uroot password 123 //修改root初始密码为123
>set password for root@localhost = password(‘123’); //修改root密码为123
エンパワーメント:
-
GRANTコマンドの許可操作の一般的なスキーム:
コマンド 効果 データベースに対する権限を付与します。フォーム名からユーザー名@ホスト名へ 特定のデータベースでフォームを承認する データベースに対する権限を付与します。* TO username @ hostname Moggの特定のデータベース内のすべてのフォームを承認します ON GRANT権限。 TOユーザ名@ホスト名 すべてのデータベースとすべてのフォームを承認します GRANTパーミッション1、パーミッション2ONデータベース。* TO username @ hostname データベース内のすべてのフォームに複数の承認を付与する ON GRANT ALL PRIVILEGESの。 TOユーザ名@ホスト名 すべてのデータベースとすべてのフォームにすべての認証を付与する - 例
>GRANT SELECT,UPDATE,DELETE,INSERT on mysql.user to test@localhost; //对test用户给予查询、更新、删除、插入权限
>> show grants for test@localhost; //查询test用户的权限
データベースとフォームを作成する
- 一般的に使用されるデータベースフォーム管理コマンド:
使用法 | 効果 |
---|---|
CREATEデータベースデータベース名; | 新しいデータベースを作成する |
DESCRIBEフォーム名; | 説明フォーム |
UPDATEフォーム名SET属性=新しい値WHERE属性>元の値; | フォームのデータを更新します |
データベース名を使用します。 | 使用するデータベースを指定します |
データベースを表示します。 | 現在存在するデータベースを表示する |
SHOWテーブル; | 現在のデータベースのフォームを表示します |
SELECT * FROMフォーム名; | フォームからレコード値を選択します |
DELETEFROMフォーム名WHERE属性=値; | フォームからレコード値を削除します |
ログをオンにします。
-
my.cnfに参加する
log =ログパス
データベースへのリモートログイン:
データベースへのリモート接続:
[root@client ~]# mysql -h [Mysql服务器IP] -P 3306 -u root -p
Enter password:123
授予用户远程访问权限:
>grant all privileges on *.* to 'root'@'%' identified by '123'; //任何主机登录数据库使用root用户登录都有任何特权,并设置密码为123
在MySQL8.0以后的版本不适合此方法
マスタースレーブサービス:
配置之前需要配置适合的IP地址和hosts文件
マスターサーバーとスレーブサーバーの統合構成:
[root@mysql1/2~]# yum install -y mariadb mariadb-server
[root@mysql1/2~]# systemctl start mariadb
[root@mysql1/2~]# systemctl enable mariadb
メインサーバー:
[root@mysql1~]# mysql_secure_installation //初始化mysql
设置密码
允许远程登录:Disallow root login remotely?[Y/n ]**n**
[root@mysql1~]# cp /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.bak
[root@mysql1~]# vi /etc/my.cnf.d/server.cnf
在[mysqld]下添加
[mysqld] log_bin = mysql-bin binlog_ignore_db = mysql server_id = 30
[root@mysql1~]# scp /etc/my.cnf.d/server.cnf mysql2:/etc/my.cnf.d
[root@mysql1~]# mysql -uroot -p[密码]
>grant all privileges on *.* to root@'%' identified by "[密码]";
>grant replication slave on *.* to 'user'@'mysql2' identified by "[密码]";
>exit
[root@mysql1~]# systemctl restart mariadb
サーバーから:
[root@mysql2 ~]# vi /etc/my.cnf.d/server.cnf
server_id = 30改为40
[root@mysql2~]# mysql_secure_installation //初始化mysql
设置密码
允许远程登录:Disallow root login remotely?[Y/n ]**n**
[root@mysql2~]# mysql -uroot -p[密码]
>change master to master_host='mysql1',master_user='user',master_password='[密码]';
>exit
[root@mysql2~]# systemctl restart mariadb
同期データ:
[root@mysql2~]# mysql -uroot -p[密码]
>start slave;
>show slave status\G //查看是否连接到主mysql服务器