次のように参考文献は以下のとおりです。
https://www.cnblogs.com/staryea/p/8514144.html
https://www.centos.bz/2018/02/mariadb-mysql%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6my-cnf%E8%A7%A3% AF用%BB%のE8 / 各構成属性mariadbの----解釈
https://blog.csdn.net/cgb278653219/article/details/84917381
https://www.cnblogs.com/ivictor/p/5727395.html
https://blog.csdn.net/jinpengncu/article/details/77879844
https://blog.csdn.net/I_jump/article/details/99691829
https://blog.csdn.net/shaochenshuo/article/details/80162005
https://www.cnblogs.com/LvLoveYuForever/p/5585197.html mariadb初期化コードをインストールした後
https://www.cnblogs.com/ysuwangqiang/p/11766470.html
https://blog.csdn.net/seesun2012/article/details/83088661
https://blog.csdn.net/weixin_30383279/article/details/97524581 ---アンインストールする方法を提供します
まず、準備作業
(1)インストールパッケージGZ形式をダウンロードする公式サイト。
(2)インストールパッケージLinxuをインストールするサーバーにアップロード。
(3)環境を確認してください。
- ポートが占有されているかどうかを確認するために3306;:-iのlsofコマンド
- PS -auxによって| grepのmysqlのかmariadbは、システムがデータベースにインストールされている図です。
第二に、インストール
1、パッケージを抽出
- CD XXXXX(ソフトウェアのディレクトリ)
- タール-zxvf mariadb-10.1.43-linuxの-x86_64.tar.gz
GZパッケージは、同じディレクトリに解凍します
2、エンパワーメント
- chmodの-R 777 *
mariadb-10.1.43-のlinux-x86_64のフォルダエンパワーメントから抽出するには
3、コンフィギュレーション・ファイルのmy.cnf
- CDのサポート、ファイル
- CP-私small.cnfな/etc/my.cnf
my.cnfのは、/ etcディレクトリにファイルをコピーします
- VIMな/etc/my.cnf
#例MySQLの設定ファイル:次のように編集したファイルは、例があるため小規模なシステムを。
# #これがあるために(<=メモリの少ないシステムMySQLはのみ使用され64M) それは時間から時間に#とのmysqldデーモンことが重要との #は、多くのリソースを使用しません。# #MySQLのプログラムは見るためのセットでオプションファイル の展開プラットフォームに依存#場所。 #あなたはコピーすることができ、このこれらのいずれかにオプションファイルを #の場所。これらの場所の詳細については、以下を参照してください 。#ます。http:// dev.mysql.com/doc/mysql/en/option-files.html # #では、このファイルは、すべて使用することができます長いが そのプログラムがサポートするオプションを。 #あなたは、プログラムの実行するオプションプログラムのサポートを知りたい場合 に#を「--help」オプションを選択します。 #以下のオプションはすべてのMySQLクライアントに渡されます [クライアント] #password = your_passwordに ポート = 3306 ソケット = /opt/mariadb-10.1.43-linux-x86_64/ にmysql.sock #ここでは、エントリは次のためのいくつかの特定のプログラム #MySQLをサーバ [mysqldを]
ポート = 3306 ユーザー = MySQLの ソケット = /opt/mariadb-10.1.43-linux-x86_64/ にmysql.sock DATADIR= /opt/mariadb-10.1.43-linux-x86_64/data/ mariadb BASEDIR = /opt/mariadb-10.1.43-linux- x86_64の LOG_ERROR = /opt/mariadb-10.1.43-linux-x86_64/ mariadb.err PID -file = /opt/mariadb-10.1.43-linux-x86_64/ mariadb.pid スキップ -external- ロッキング key_buffer_sizeは = 64M のmax_allowed_packet = 64M table_open_cacheの = 256 sort_buffer_size = 1M read_buffer_size = 1M read_rnd_buffer_size = 4M net_buffer_length = 64M thread_stack =240K explicit_defaults_for_timestamp = 真 default_storage_engine = InnoDBは #ドン「トンは、すべてのTCP / IPポートをリッスン。これは、セキュリティの強化、可能 #場合は必要なすべてのプロセスが同じホスト上でmysqldを実行に接続するために。 #mysqldを持つすべての相互作用は、Unixソケットまたは名前付きパイプを経由して行われなければなりません。 使用していること#注このWindows上で名前付きパイプを有効にせずにオプションを (使用して#「有効-名前付きパイプ」オプションは)役に立たないmysqldのレンダリングされます! # #skip - ネットワーキング サーバー -id = 1 #コメントを外し、以下の場合更新をログに記録したい ログ -bin =はmysql- ビン #バイナリログ形式 - 混合推奨 #binlog_formatを = 混合 #以外への更新を引き起こす - されるステートメントの形式を使用してトランザクションエンジン バイナリログに直接#を書かれました。使用する前に、この確認オプションのメイクをすることを #トランザクションと非の間には依存関係が存在しない - トランザクション などSELECT t_myisam文のINSERT INTOのように#テーブル * FROM #のt_innodbは、そうでない場合、スレーブはマスタから発散することがあります。 #binlog_direct_non_transactional_updates = TRUE #コメントを解除以下の場合は、あなたがInnoDBテーブルを使用している innodb_data_home_dirを = /opt/mariadb-10.1.43-linux-x86_64/data/ mariadb innodb_data_file_path = ibdata1と:10M:自動拡張 innodb_log_group_home_dir = /opt/mariadb-10.1.43-linux-x86_64/データ/ mariadbの あなたは、最大buffer_pool_size .._設定することができます。# 80%の- 50 RAMの#をあまりにも高いメモリ使用量を設定するには注意してください innodb_buffer_pool_size = 64M innodb_additional_mem_pool_size = 2M #に設定.._ log_file_size 25%バッファー・プール・サイズの innodb_log_file_size = 32M innodb_log_buffer_size = 20M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 [mysqldumpを] 素早い するmax_allowed_packet = 16M [mysqlの] なし -auto- 焼き直し #次のコメント文字を削除した場合は、SQLに精通していない #safe - アップデート [myisamchkの] key_buffer_sizeは = 8M sort_buffer_size = 8M [mysqlhotcopy] インタラクティブ -timeout
3、インストール
(1)MySQLのユーザを追加します
- 何のアドオンが存在しないかどうかを確認するためにはgrep mysqlの/ etc / passwdファイル--- mysqlのユーザー
- useraddコマンドのmysql ---ユーザーの追加のmysql
- chownコマンドmysql.mysql /opt/mariadb-10.1.43-linux-x86_64/data/mariadb -R --- EMPOWER mysqlの、データベース格納ディレクトリへ
問題:
useraddを実行すると、次のヒントが表示されることがありますが、以下の問題が追加されたユーザーには影響しません。
しかし、以下の手段によって、この問題を解決しよう:
削除ユーザーでuserdel mysqlのが、userdelの-rf MySQLを使用していません
図は思い出し間違いがないこの時点で見ることができます。
インターネットユーザーは、他の方法の作成を参照してください。
[ルート@ノード1〜]#useraddの-M -R&LT -s / binに/ MySQLのNOLOGIN [ルート@ノード1〜】ID#MySQLの UID = 987(MySQLの)GID = 981(MySQLの)群= 981(MySQLは)
、変更がデータベースにありますこれは、主根のグループです
[root@node1 local]# chown root.root -R mysql
(2)データベースを初期化します
- CDの/opt/mariadb-10.1.43-linux-x86_64/scripts
-
./mysql_install_db --datadir =は/ opt / mariadb-10.1.43-のlinux-x86_64版/データ/ mariadb --basedir =は/ opt / mariadb-10.1.43-のlinux-x86_64の--defaults-ファイル=は/ etc /私の。 CNF --user = mysqlの
注:これは、実行可能なスクリプトmysql_install_dbのある、あなたは前に実行する./追加する必要があります。
成功は起こる上記に示しています。
インストールが真の成功したかどうかを確認します。
- LL /opt/mariadb-10.1.43-linux-x86_64/data/mariadb/
以上の3つの赤いボックスが正常にインストールされたことを示す表示されます。
問題:
- 在执行初始化脚本过程中,可能会因为别的原因,导致初始化失败,此时可以查看mariadb的日志(在/etc/my.cnf 中设置 log_error 来指定错误日志路径)
- 还可能出现如下权限问题
所以需要给mysql 用户赋读取数据库目录的权限,可以使用命令 chown mysql.mysql /opt/mariadb-10.1.43-linux-x86_64/data/mariadb -R
(3) 注册成系统服务
- cp support-files/mysql.server /etc/init.d/mysqld
- chkconfig --add mysqld # 添加至系统服务
- chkconfig mysqld on # 设置开机自启动
- chkconfig --list |more --- 查看启动项
(4) 设置指向安装目录的软链接
- ln -s 安装目录 /usr/local/mysql
这样是把数据库安装别的目录了。mariadb 编译的时候默认为是安装在 /usr/loca/mysql下的
(5) 以后台服务先试运行
出现问题:
- ./mysqld_safe --defaults-file=/etc/my.cnf
[root@CI-Fsdmdept-DB-72-73 bin]# ./mysqld_safe --defaults-file=/etc/my.cnf Warning: World-writable config file '/etc/my.cnf' is ignored Warning: World-writable config file '/etc/my.cnf' is ignored 200114 17:15:54 mysqld_safe Logging to '/usr/local/mysql/data/CI-Fsdmdept-DB-72-73.err'. 200114 17:15:54 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data /opt/mariadb-10.1.43-linux-x86_64/bin/mysqld_safe_helper: Can't create/write to file '/usr/local/mysql/data/CI-Fsdmdept-DB-72-73.err' (Errcode: 2 "No such file or directory")
Warning: World-writable config file '/etc/my.cnf' is ignored
这个原因是之前 在etc目录下生成my.cnf 执行了命令 chmod -R 777 的权限,导致 其变成全局用户可写了。提示Warning: World-writable config file ‘/etc/my.cnf’ is ignored ,大概意思是权限全局可写,任何一个用户都可以写。mysql担心这种文件被其他用户恶意修改,所以忽略掉这个配置文件。
解决办法,重新给该文件赋权限。执行以下命令:
- chmod 644 /etc/my.cnf
my.cnf设置为用户可读写,其他用户不可写.
PS:所以在执行文件操作的时候,最好还是使用 cp 命令进行 拷贝,使用 vim 进行在线编辑。
若不解决以上问题,想继续往下走,此时可以执行:
- ./mysqld_safe --datadir='/opt/mariadb-10.1.43-linux-x86_64/data/mariadb' --basedir=/opt/mariadb-10.1.43-linux-x86_64
此时又出现红色区域问题,解决办法:
红色区域表示 写文件没有权限,此时需要给文件夹
mariadb-10.1.43-linux-x86_64 赋权限,可以进行使用如下命令:
- cd /opt/mariadb-10.1.43-linux-x86_64
- chmod -R 777 *
接着再次执行命令启动服务
- /mysqld_safe --datadir='/opt/mariadb-10.1.43-linux-x86_64/data/mariadb' --basedir=/opt/mariadb-10.1.43-linux-x86_64 或 ./mysqld_safe --defaults-file = /etc/my.cnf
- ps -aux|grep mysql ---- 查看服务是否启动
出现上图表示服务已经启动。
(5) 修改用户密码
可以按照之前初始化数据库成功时,提示的指导来执行。
-
ln -s /opt/mariadb-10.1.43-linux-x86_64/mysql.sock /tmp/ 方便登录mysql 对mysql.sock文件做个软连接;(因为mysql.sock文件我们在配置文件里已经修改了默认路径,需要软连接到/tmp/下)
- ./mysqladmin -u root password '123456' ---- 设置初始密码
(6) 可选操作(MySQL 安全配置)
可以参考:https://www.cnblogs.com/54db/p/7586577.html PS:后续试验补充
(7) 设置允许远程访问
- ./mysql -uroot -p --- 登录数据库
-
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'xxxx' WITH GRANT OPTION; xxx为密码
- flush privileges;
问题:
(1) 在登录的时候,会提示找不到文件
解决办法:
- ldd mysql ---- 查找依赖
发现依赖库均在lib64上,所以通过 ll /lib64/libtinfo.so.* 查找是否存在 libtinfo.so.xx的文件,执行完,发现如下:
lib64 目录下存在libtinfo.so文件,进行软链接。
上图表示已补全依赖库,此时再次登录数据库
(2) 通过以上命令设置远程,发现使用工具还是使用不上,需进行以下方式进行排查。
- show grants;
以上显示仅有 root 通过localhost才能连接,其他无法连接,此时要插入 root@% 权限。
三、卸载
1、关闭 mysql 服务
- 关闭mysql服务
service mysql stop 或 /etc/init.d/mysql stop 或 mysqladmin shutdown -uroot -p
- 删除数据文件和目录
-
whereis mysql
-
find / -name mysql
-
rm -rf xxx
- 删除软链接,二进文件(如有必要)
-
cd /usr/ local/
-
unlink mysql
- 删除自启动配置,配置文件
-
chkconfig -- del mysql
-
rm -f /etc/init.d/mysql /etc/my.cnf
- 删除mysql用户和用户组(如有必要)
-
userdel mysql
-