Difference between revisions of "SBN - Database Server Notes"
Jump to navigation
Jump to search
(Created page with "This page will eventually be a set of instructions aimed at building a VM that handles ALL of the databases for as many web/wiki/WP/etc servers as you want on your network.....") |
|||
Line 1: | Line 1: | ||
− | + | A dedicated server Just to run MySQL... | |
− | + | Then you can simply point all the other things that use it to a central location. | |
− | * [[MySQL | + | i.e.: Wikipedia, WordPress, WeeWX, etc... |
+ | |||
+ | = Linux Mint = | ||
+ | * Mint 19.3 Seems to get MySQL 5.7.30 | ||
+ | * Mint 20 Gets MySQL 8.0.20 | ||
+ | |||
+ | * <code>sudo apt install mysql-server mysql-client php-mysql</code> | ||
+ | ** Say Yes to Continue | ||
+ | * See [[TinkerWiki:MySQL - Initial Configuration]] for configuration | ||
+ | |||
+ | = SparkyLinux = | ||
+ | * Doesn't even have MySQL in the repositories... | ||
+ | * [[TinkerWiki:Getting MySQL onto SparkyLinux]] | ||
+ | ** Which then gets MySQL 8.0.21 | ||
+ | |||
+ | * <code>sudo apt install mysql-server mysql-client php-mysql</code> | ||
+ | ** Say Yes to Continue | ||
+ | ** <u>Configuring mysql-community-server</u> | ||
+ | *** Pick a good '''root''' password... | ||
+ | *** I tend to select '''Use Legacy Authentication Method''' because '''Use Strong Password Encryption''' is annoying as hell. (Your choice here...) | ||
+ | * See [[TinkerWiki:MySQL - Initial Configuration B]] for configuration | ||
+ | ** (pretty much same as [[TinkerWiki:MySQL - Initial Configuration]] except the root password is already done...) | ||
+ | |||
+ | = Set up at least one user in mysql = | ||
+ | |||
+ | * <code>sudo mysql -u root -p</code> | ||
+ | ** You will be asked for '''2''' passwords, your own & that of the root database user. | ||
+ | |||
+ | CREATE USER 'someone'@'localhost' IDENTIFIED BY 'password'; | ||
+ | FLUSH PRIVILEGES; | ||
+ | EXIT; | ||
+ | ('''Hint:''' This'd be a good time to create yourself as that user with your non-admin password of choice...) | ||
+ | |||
+ | If this is to be a remotely accessed Database Server, ''''localhost'''' will actually be the name/address of the remote machine you'll access '''from'''. (Possibly even ''''*'''') | ||
+ | |||
+ | = Reference Materials = | ||
+ | |||
+ | * [http://g2pc1.bu.edu/~qzpeng/manual/MySQL%20Commands.htm Commands] | ||
+ | * [https://linuxize.com/post/how-to-manage-mysql-databases-and-users-from-the-command-line/ How to Manage MySQL Databases and Users from the Command Line] | ||
+ | * [https://www.hostinger.com/tutorials/?s=mysql Some handy tutorials] | ||
+ | ** [https://www.hostinger.com/tutorials/mysql-show-users/ How to Show Users in MySQL on Linux] | ||
+ | |||
+ | = Useful Things = | ||
+ | |||
+ | * Restart MySQL | ||
+ | ** <code>sudo systemctl restart mysql.service</code> | ||
+ | * Change a user password | ||
+ | ** <code>ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here';</code> | ||
+ | * Trash a complete database '''(WARNING! DANGER! DAMAGE LIKELY!)''' | ||
+ | ** <code>DROP DATABASE wp_Someblog;</code> | ||
+ | * List existing databases | ||
+ | ** <code>SHOW databases;</code> | ||
+ | * List existing users | ||
+ | ** <code>SELECT user,host FROM mysql.user;</code> |
Revision as of 16:42, 18 July 2020
A dedicated server Just to run MySQL...
Then you can simply point all the other things that use it to a central location.
i.e.: Wikipedia, WordPress, WeeWX, etc...
Contents
Linux Mint
- Mint 19.3 Seems to get MySQL 5.7.30
- Mint 20 Gets MySQL 8.0.20
sudo apt install mysql-server mysql-client php-mysql
- Say Yes to Continue
- See TinkerWiki:MySQL - Initial Configuration for configuration
SparkyLinux
- Doesn't even have MySQL in the repositories...
- TinkerWiki:Getting MySQL onto SparkyLinux
- Which then gets MySQL 8.0.21
sudo apt install mysql-server mysql-client php-mysql
- Say Yes to Continue
- Configuring mysql-community-server
- Pick a good root password...
- I tend to select Use Legacy Authentication Method because Use Strong Password Encryption is annoying as hell. (Your choice here...)
- See TinkerWiki:MySQL - Initial Configuration B for configuration
- (pretty much same as TinkerWiki:MySQL - Initial Configuration except the root password is already done...)
Set up at least one user in mysql
sudo mysql -u root -p
- You will be asked for 2 passwords, your own & that of the root database user.
CREATE USER 'someone'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; EXIT;
(Hint: This'd be a good time to create yourself as that user with your non-admin password of choice...)
If this is to be a remotely accessed Database Server, 'localhost' will actually be the name/address of the remote machine you'll access from. (Possibly even '*')
Reference Materials
Useful Things
- Restart MySQL
sudo systemctl restart mysql.service
- Change a user password
ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here';
- Trash a complete database (WARNING! DANGER! DAMAGE LIKELY!)
DROP DATABASE wp_Someblog;
- List existing databases
SHOW databases;
- List existing users
SELECT user,host FROM mysql.user;